TSTP Solution File: NUM652^4 by cocATP---0.2.0
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : cocATP---0.2.0
% Problem : NUM652^4 : TPTP v7.1.0. Released v7.1.0.
% Transfm : none
% Format : tptp:raw
% Command : python CASC.py /export/starexec/sandbox2/benchmark/theBenchmark.p
% Computer : n096.star.cs.uiowa.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2609 0 2.40GHz
% Memory : 32218.625MB
% OS : Linux 3.10.0-693.2.2.el7.x86_64
% CPULimit : 300s
% DateTime : Mon Jan 8 13:11:18 EST 2018
% Result : Unknown 46.26s
% Output : None
% Verified :
% SZS Type : None (Parsing solution fails)
% Syntax : Number of formulae : 0
% Comments :
%------------------------------------------------------------------------------
%----No solution output by system
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.04 % Problem : NUM652^4 : TPTP v7.1.0. Released v7.1.0.
% 0.00/0.04 % Command : python CASC.py /export/starexec/sandbox2/benchmark/theBenchmark.p
% 0.02/0.24 % Computer : n096.star.cs.uiowa.edu
% 0.02/0.24 % Model : x86_64 x86_64
% 0.02/0.24 % CPU : Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz
% 0.02/0.24 % Memory : 32218.625MB
% 0.02/0.24 % OS : Linux 3.10.0-693.2.2.el7.x86_64
% 0.02/0.24 % CPULimit : 300
% 0.02/0.24 % DateTime : Fri Jan 5 11:38:06 CST 2018
% 0.02/0.24 % CPUTime :
% 0.02/0.26 Python 2.7.13
% 0.08/0.53 Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox2/benchmark/', '/export/starexec/sandbox2/benchmark/']
% 0.08/0.53 Failed to open /home/cristobal/cocATP/CASC/TPTP/Axioms/NUM007^0.ax, trying next directory
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bfed950>, <kernel.DependentProduct object at 0x2aea2bc256c8>) of role type named typ_is_of
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring is_of:(fofType->((fofType->Prop)->Prop))
% 0.08/0.53 FOF formula (((eq (fofType->((fofType->Prop)->Prop))) is_of) (fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0))) of role definition named def_is_of
% 0.08/0.53 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) is_of) (fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)))
% 0.08/0.53 Defined: is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0))
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bd0a098>, <kernel.DependentProduct object at 0x2aea2bc25488>) of role type named typ_all_of
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring all_of:((fofType->Prop)->((fofType->Prop)->Prop))
% 0.08/0.53 FOF formula (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) all_of) (fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2))))) of role definition named def_all_of
% 0.08/0.53 A new definition: (((eq ((fofType->Prop)->((fofType->Prop)->Prop))) all_of) (fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))))
% 0.08/0.53 Defined: all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2))))
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bd0a098>, <kernel.DependentProduct object at 0x2aea2bc25170>) of role type named typ_eps
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring eps:((fofType->Prop)->fofType)
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bd0a098>, <kernel.DependentProduct object at 0x2aea2bc25170>) of role type named typ_in
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring in:(fofType->(fofType->Prop))
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bfed950>, <kernel.DependentProduct object at 0x2aea2bc25170>) of role type named typ_d_Subq
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring d_Subq:(fofType->(fofType->Prop))
% 0.08/0.53 FOF formula (((eq (fofType->(fofType->Prop))) d_Subq) (fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1))))) of role definition named def_d_Subq
% 0.08/0.53 A new definition: (((eq (fofType->(fofType->Prop))) d_Subq) (fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))))
% 0.08/0.53 Defined: d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1))))
% 0.08/0.53 FOF formula (forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1)))) of role axiom named set_ext
% 0.08/0.53 A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 0.08/0.53 FOF formula (forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1)))) of role axiom named k_In_ind
% 0.08/0.53 A new axiom: (forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bfedd40>, <kernel.Single object at 0x2aea2bc25440>) of role type named typ_emptyset
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring emptyset:fofType
% 0.08/0.53 FOF formula (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False) of role axiom named k_EmptyAx
% 0.08/0.53 A new axiom: (((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bc25638>, <kernel.DependentProduct object at 0x2aea2bc25908>) of role type named typ_union
% 0.08/0.53 Using role type
% 0.08/0.53 Declaring union:(fofType->fofType)
% 0.08/0.53 FOF formula (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0)))))) of role axiom named k_UnionEq
% 0.08/0.53 A new axiom: (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 0.08/0.53 FOF formula (<kernel.Constant object at 0x2aea2bc25878>, <kernel.DependentProduct object at 0x2aea2bc25518>) of role type named typ_power
% 0.08/0.53 Using role type
% 0.08/0.54 Declaring power:(fofType->fofType)
% 0.08/0.54 FOF formula (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))) of role axiom named k_PowerEq
% 0.08/0.54 A new axiom: (forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 0.08/0.54 FOF formula (<kernel.Constant object at 0x2aea2bc259e0>, <kernel.DependentProduct object at 0x2aea2bc25248>) of role type named typ_repl
% 0.08/0.54 Using role type
% 0.08/0.54 Declaring repl:(fofType->((fofType->fofType)->fofType))
% 0.08/0.54 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3))))))) of role axiom named k_ReplEq
% 0.08/0.54 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 0.08/0.54 FOF formula (<kernel.Constant object at 0x2aea2bc25128>, <kernel.DependentProduct object at 0x2aea2bc25560>) of role type named typ_d_Union_closed
% 0.08/0.54 Using role type
% 0.08/0.54 Declaring d_Union_closed:(fofType->Prop)
% 0.08/0.54 FOF formula (((eq (fofType->Prop)) d_Union_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0))))) of role definition named def_d_Union_closed
% 0.08/0.54 A new definition: (((eq (fofType->Prop)) d_Union_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))))
% 0.08/0.54 Defined: d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0))))
% 0.08/0.54 FOF formula (<kernel.Constant object at 0x2aea2bc25560>, <kernel.DependentProduct object at 0x2aea2bc25908>) of role type named typ_d_Power_closed
% 0.08/0.54 Using role type
% 0.08/0.54 Declaring d_Power_closed:(fofType->Prop)
% 0.08/0.54 FOF formula (((eq (fofType->Prop)) d_Power_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0))))) of role definition named def_d_Power_closed
% 0.08/0.54 A new definition: (((eq (fofType->Prop)) d_Power_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))))
% 0.08/0.54 Defined: d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0))))
% 0.08/0.54 FOF formula (<kernel.Constant object at 0x2aea2bc25908>, <kernel.DependentProduct object at 0x2aea2bc258c0>) of role type named typ_d_Repl_closed
% 0.08/0.54 Using role type
% 0.08/0.54 Declaring d_Repl_closed:(fofType->Prop)
% 0.08/0.54 FOF formula (((eq (fofType->Prop)) d_Repl_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0))))))) of role definition named def_d_Repl_closed
% 0.08/0.54 A new definition: (((eq (fofType->Prop)) d_Repl_closed) (fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))))
% 0.08/0.54 Defined: d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0))))))
% 0.08/0.54 FOF formula (<kernel.Constant object at 0x2aea2bc25560>, <kernel.DependentProduct object at 0x2aea2bc25128>) of role type named typ_d_ZF_closed
% 0.08/0.54 Using role type
% 0.08/0.54 Declaring d_ZF_closed:(fofType->Prop)
% 0.08/0.54 FOF formula (((eq (fofType->Prop)) d_ZF_closed) (fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0)))) of role definition named def_d_ZF_closed
% 0.08/0.54 A new definition: (((eq (fofType->Prop)) d_ZF_closed) (fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))))
% 0.08/0.54 Defined: d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0)))
% 0.08/0.54 FOF formula (<kernel.Constant object at 0x2aea2bc25908>, <kernel.DependentProduct object at 0x2aea2bbfbf80>) of role type named typ_univof
% 0.08/0.54 Using role type
% 0.08/0.54 Declaring univof:(fofType->fofType)
% 0.08/0.54 FOF formula (forall (X0:fofType), ((in X0) (univof X0))) of role axiom named k_UnivOf_In
% 0.08/0.54 A new axiom: (forall (X0:fofType), ((in X0) (univof X0)))
% 0.08/0.54 FOF formula (forall (X0:fofType), (d_ZF_closed (univof X0))) of role axiom named k_UnivOf_ZF_closed
% 0.37/0.56 A new axiom: (forall (X0:fofType), (d_ZF_closed (univof X0)))
% 0.37/0.56 FOF formula (<kernel.Constant object at 0x2aea2bbfbef0>, <kernel.DependentProduct object at 0x2aea2bc25290>) of role type named typ_if
% 0.37/0.56 Using role type
% 0.37/0.56 Declaring if:(Prop->(fofType->(fofType->fofType)))
% 0.37/0.56 FOF formula (((eq (Prop->(fofType->(fofType->fofType)))) if) (fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2))))))) of role definition named def_if
% 0.37/0.56 A new definition: (((eq (Prop->(fofType->(fofType->fofType)))) if) (fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))))
% 0.37/0.56 Defined: if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2))))))
% 0.37/0.56 FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2)))) of role axiom named if_i_correct
% 0.37/0.56 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 0.37/0.56 FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2))) of role axiom named if_i_0
% 0.37/0.56 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 0.37/0.56 FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1))) of role axiom named if_i_1
% 0.37/0.56 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 0.37/0.56 FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2))) of role axiom named if_i_or
% 0.37/0.56 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 0.37/0.56 FOF formula (<kernel.Constant object at 0x2aea2bc25290>, <kernel.DependentProduct object at 0x2aea2bc1e170>) of role type named typ_nIn
% 0.37/0.56 Using role type
% 0.37/0.56 Declaring nIn:(fofType->(fofType->Prop))
% 0.37/0.56 FOF formula (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))) of role definition named def_nIn
% 0.37/0.56 A new definition: (((eq (fofType->(fofType->Prop))) nIn) (fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)))
% 0.37/0.56 Defined: nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False))
% 0.37/0.56 FOF formula (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))) of role axiom named k_PowerE
% 0.37/0.56 A new axiom: (forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 0.37/0.56 FOF formula (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))) of role axiom named k_PowerI
% 0.37/0.56 A new axiom: (forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 0.37/0.56 FOF formula (forall (X0:fofType), ((in X0) (power X0))) of role axiom named k_Self_In_Power
% 0.37/0.56 A new axiom: (forall (X0:fofType), ((in X0) (power X0)))
% 0.37/0.56 FOF formula (<kernel.Constant object at 0x2aea2bc1e830>, <kernel.DependentProduct object at 0x2aea2bc1e200>) of role type named typ_d_UPair
% 0.37/0.56 Using role type
% 0.37/0.56 Declaring d_UPair:(fofType->(fofType->fofType))
% 0.37/0.56 FOF formula (((eq (fofType->(fofType->fofType))) d_UPair) (fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1))))) of role definition named def_d_UPair
% 0.37/0.56 A new definition: (((eq (fofType->(fofType->fofType))) d_UPair) (fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))))
% 0.37/0.56 Defined: d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1))))
% 0.37/0.56 FOF formula (<kernel.Constant object at 0x2aea2bc1e200>, <kernel.DependentProduct object at 0x2aea2bc1e9e0>) of role type named typ_d_Sing
% 0.37/0.56 Using role type
% 0.37/0.57 Declaring d_Sing:(fofType->fofType)
% 0.37/0.57 FOF formula (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0))) of role definition named def_d_Sing
% 0.37/0.57 A new definition: (((eq (fofType->fofType)) d_Sing) (fun (X0:fofType)=> ((d_UPair X0) X0)))
% 0.37/0.57 Defined: d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0))
% 0.37/0.57 FOF formula (<kernel.Constant object at 0x2aea2bc1e9e0>, <kernel.DependentProduct object at 0x2aea2bc1ec20>) of role type named typ_binunion
% 0.37/0.57 Using role type
% 0.37/0.57 Declaring binunion:(fofType->(fofType->fofType))
% 0.37/0.57 FOF formula (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))) of role definition named def_binunion
% 0.37/0.57 A new definition: (((eq (fofType->(fofType->fofType))) binunion) (fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))))
% 0.37/0.57 Defined: binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1)))
% 0.37/0.57 FOF formula (<kernel.Constant object at 0x2aea2bc1ec20>, <kernel.DependentProduct object at 0x2aea2bc1eef0>) of role type named typ_famunion
% 0.37/0.57 Using role type
% 0.37/0.57 Declaring famunion:(fofType->((fofType->fofType)->fofType))
% 0.37/0.57 FOF formula (((eq (fofType->((fofType->fofType)->fofType))) famunion) (fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1)))) of role definition named def_famunion
% 0.37/0.57 A new definition: (((eq (fofType->((fofType->fofType)->fofType))) famunion) (fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))))
% 0.37/0.57 Defined: famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1)))
% 0.37/0.57 FOF formula (<kernel.Constant object at 0x2aea2bc1eef0>, <kernel.DependentProduct object at 0x2aea2bc1eb00>) of role type named typ_d_Sep
% 0.37/0.57 Using role type
% 0.37/0.57 Declaring d_Sep:(fofType->((fofType->Prop)->fofType))
% 0.37/0.57 FOF formula (((eq (fofType->((fofType->Prop)->fofType))) d_Sep) (fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset))) of role definition named def_d_Sep
% 0.37/0.57 A new definition: (((eq (fofType->((fofType->Prop)->fofType))) d_Sep) (fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)))
% 0.37/0.57 Defined: d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset))
% 0.37/0.57 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1))))) of role axiom named k_SepI
% 0.37/0.57 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 0.37/0.57 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0))) of role axiom named k_SepE1
% 0.37/0.57 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 0.37/0.57 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2))) of role axiom named k_SepE2
% 0.37/0.57 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 0.37/0.57 FOF formula (<kernel.Constant object at 0x2aea2bc1ec20>, <kernel.DependentProduct object at 0x2aea2bc1ee60>) of role type named typ_d_ReplSep
% 0.37/0.57 Using role type
% 0.37/0.57 Declaring d_ReplSep:(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 0.37/0.57 FOF formula (((eq (fofType->((fofType->Prop)->((fofType->fofType)->fofType)))) d_ReplSep) (fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1)))) of role definition named def_d_ReplSep
% 0.37/0.57 A new definition: (((eq (fofType->((fofType->Prop)->((fofType->fofType)->fofType)))) d_ReplSep) (fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))))
% 0.37/0.57 Defined: d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1)))
% 0.37/0.57 FOF formula (<kernel.Constant object at 0x2aea2bc1ed40>, <kernel.DependentProduct object at 0x2aea2bd46950>) of role type named typ_setminus
% 0.37/0.59 Using role type
% 0.37/0.59 Declaring setminus:(fofType->(fofType->fofType))
% 0.37/0.59 FOF formula (((eq (fofType->(fofType->fofType))) setminus) (fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1))))) of role definition named def_setminus
% 0.37/0.59 A new definition: (((eq (fofType->(fofType->fofType))) setminus) (fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))))
% 0.37/0.59 Defined: setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1))))
% 0.37/0.59 FOF formula (<kernel.Constant object at 0x2aea2bc1ed40>, <kernel.DependentProduct object at 0x2aea2bd460e0>) of role type named typ_d_In_rec_G
% 0.37/0.59 Using role type
% 0.37/0.59 Declaring d_In_rec_G:((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 0.37/0.59 FOF formula (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))) d_In_rec_G) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2))))) of role definition named def_d_In_rec_G
% 0.37/0.59 A new definition: (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))) d_In_rec_G) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))))
% 0.37/0.59 Defined: d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2))))
% 0.37/0.59 FOF formula (<kernel.Constant object at 0x2aea2bc1ed40>, <kernel.DependentProduct object at 0x2aea2bd46680>) of role type named typ_d_In_rec
% 0.37/0.59 Using role type
% 0.37/0.59 Declaring d_In_rec:((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 0.37/0.59 FOF formula (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->fofType))) d_In_rec) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1)))) of role definition named def_d_In_rec
% 0.37/0.59 A new definition: (((eq ((fofType->((fofType->fofType)->fofType))->(fofType->fofType))) d_In_rec) (fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))))
% 0.37/0.59 Defined: d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1)))
% 0.37/0.59 FOF formula (<kernel.Constant object at 0x2aea2bd46680>, <kernel.DependentProduct object at 0x2aea2bd46320>) of role type named typ_ordsucc
% 0.37/0.59 Using role type
% 0.37/0.59 Declaring ordsucc:(fofType->fofType)
% 0.37/0.59 FOF formula (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))) of role definition named def_ordsucc
% 0.37/0.59 A new definition: (((eq (fofType->fofType)) ordsucc) (fun (X0:fofType)=> ((binunion X0) (d_Sing X0))))
% 0.37/0.59 Defined: ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0)))
% 0.37/0.59 FOF formula (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))) of role axiom named neq_ordsucc_0
% 0.37/0.59 A new axiom: (forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 0.37/0.59 FOF formula (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))) of role axiom named ordsucc_inj
% 0.37/0.59 A new axiom: (forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 0.37/0.59 FOF formula ((in emptyset) (ordsucc emptyset)) of role axiom named k_In_0_1
% 0.37/0.59 A new axiom: ((in emptyset) (ordsucc emptyset))
% 0.37/0.59 FOF formula (<kernel.Constant object at 0x2aea2bd462d8>, <kernel.DependentProduct object at 0x2aea2bd46950>) of role type named typ_nat_p
% 0.37/0.59 Using role type
% 0.37/0.59 Declaring nat_p:(fofType->Prop)
% 0.37/0.59 FOF formula (((eq (fofType->Prop)) nat_p) (fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0)))))) of role definition named def_nat_p
% 0.37/0.61 A new definition: (((eq (fofType->Prop)) nat_p) (fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))))
% 0.37/0.61 Defined: nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0)))))
% 0.37/0.61 FOF formula (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))) of role axiom named nat_ordsucc
% 0.37/0.61 A new axiom: (forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 0.37/0.61 FOF formula (nat_p (ordsucc emptyset)) of role axiom named nat_1
% 0.37/0.61 A new axiom: (nat_p (ordsucc emptyset))
% 0.37/0.61 FOF formula (forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1)))))) of role axiom named nat_ind
% 0.37/0.61 A new axiom: (forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 0.37/0.61 FOF formula (forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1)))))))) of role axiom named nat_inv
% 0.37/0.61 A new axiom: (forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 0.37/0.61 FOF formula (<kernel.Constant object at 0x2aea2bd469e0>, <kernel.Single object at 0x2aea2bd46710>) of role type named typ_omega
% 0.37/0.61 Using role type
% 0.37/0.61 Declaring omega:fofType
% 0.37/0.61 FOF formula (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p)) of role definition named def_omega
% 0.37/0.61 A new definition: (((eq fofType) omega) ((d_Sep (univof emptyset)) nat_p))
% 0.37/0.61 Defined: omega:=((d_Sep (univof emptyset)) nat_p)
% 0.37/0.61 FOF formula (forall (X0:fofType), (((in X0) omega)->(nat_p X0))) of role axiom named omega_nat_p
% 0.37/0.61 A new axiom: (forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 0.37/0.61 FOF formula (forall (X0:fofType), ((nat_p X0)->((in X0) omega))) of role axiom named nat_p_omega
% 0.37/0.61 A new axiom: (forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 0.37/0.61 FOF formula (<kernel.Constant object at 0x2aea2bd46290>, <kernel.DependentProduct object at 0x2aea2bd46710>) of role type named typ_d_Inj1
% 0.37/0.61 Using role type
% 0.37/0.61 Declaring d_Inj1:(fofType->fofType)
% 0.37/0.61 FOF formula (((eq (fofType->fofType)) d_Inj1) (d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1))))) of role definition named def_d_Inj1
% 0.37/0.61 A new definition: (((eq (fofType->fofType)) d_Inj1) (d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))))
% 0.37/0.61 Defined: d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1))))
% 0.37/0.61 FOF formula (<kernel.Constant object at 0x2aea2bd469e0>, <kernel.DependentProduct object at 0x2aea2bd46d40>) of role type named typ_d_Inj0
% 0.37/0.61 Using role type
% 0.37/0.61 Declaring d_Inj0:(fofType->fofType)
% 0.37/0.61 FOF formula (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1))) of role definition named def_d_Inj0
% 0.37/0.61 A new definition: (((eq (fofType->fofType)) d_Inj0) (fun (X0:fofType)=> ((repl X0) d_Inj1)))
% 0.37/0.61 Defined: d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1))
% 0.37/0.61 FOF formula (<kernel.Constant object at 0x2aea2bd46d40>, <kernel.DependentProduct object at 0x2aea2bd46710>) of role type named typ_d_Unj
% 0.37/0.61 Using role type
% 0.37/0.61 Declaring d_Unj:(fofType->fofType)
% 0.37/0.61 FOF formula (((eq (fofType->fofType)) d_Unj) (d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset)))))) of role definition named def_d_Unj
% 0.37/0.61 A new definition: (((eq (fofType->fofType)) d_Unj) (d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))))
% 0.37/0.61 Defined: d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset)))))
% 0.37/0.61 FOF formula (<kernel.Constant object at 0x2aea2bd46290>, <kernel.DependentProduct object at 0x2aea2bd46710>) of role type named typ_pair
% 0.37/0.61 Using role type
% 0.37/0.61 Declaring pair:(fofType->(fofType->fofType))
% 0.37/0.61 FOF formula (((eq (fofType->(fofType->fofType))) pair) (fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1)))) of role definition named def_pair
% 0.43/0.62 A new definition: (((eq (fofType->(fofType->fofType))) pair) (fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))))
% 0.43/0.62 Defined: pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1)))
% 0.43/0.62 FOF formula (<kernel.Constant object at 0x2aea2bd46710>, <kernel.DependentProduct object at 0x2aea2bd46518>) of role type named typ_proj0
% 0.43/0.62 Using role type
% 0.43/0.62 Declaring proj0:(fofType->fofType)
% 0.43/0.62 FOF formula (((eq (fofType->fofType)) proj0) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj))) of role definition named def_proj0
% 0.43/0.62 A new definition: (((eq (fofType->fofType)) proj0) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)))
% 0.43/0.62 Defined: proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj))
% 0.43/0.62 FOF formula (<kernel.Constant object at 0x2aea2bd46518>, <kernel.DependentProduct object at 0x2aea2bd46440>) of role type named typ_proj1
% 0.43/0.62 Using role type
% 0.43/0.62 Declaring _TPTP_proj1:(fofType->fofType)
% 0.43/0.62 FOF formula (((eq (fofType->fofType)) _TPTP_proj1) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj))) of role definition named def_proj1
% 0.43/0.62 A new definition: (((eq (fofType->fofType)) _TPTP_proj1) (fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)))
% 0.43/0.62 Defined: _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj))
% 0.43/0.62 FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)) of role axiom named proj0_pair_eq
% 0.43/0.62 A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 0.43/0.62 FOF formula (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)) of role axiom named proj1_pair_eq
% 0.43/0.62 A new axiom: (forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 0.43/0.62 FOF formula (<kernel.Constant object at 0x2aea2bd46e18>, <kernel.DependentProduct object at 0x2aea2bd468c0>) of role type named typ_d_Sigma
% 0.43/0.62 Using role type
% 0.43/0.62 Declaring d_Sigma:(fofType->((fofType->fofType)->fofType))
% 0.43/0.62 FOF formula (((eq (fofType->((fofType->fofType)->fofType))) d_Sigma) (fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2)))))) of role definition named def_d_Sigma
% 0.43/0.62 A new definition: (((eq (fofType->((fofType->fofType)->fofType))) d_Sigma) (fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))))
% 0.43/0.62 Defined: d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2)))))
% 0.43/0.62 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1)))))) of role axiom named pair_Sigma
% 0.43/0.62 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 0.43/0.62 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))) of role axiom named k_Sigma_eta_proj0_proj1
% 0.43/0.62 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 0.43/0.62 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2))) of role axiom named proj_Sigma_eta
% 0.43/0.64 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 0.43/0.64 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0))) of role axiom named proj0_Sigma
% 0.43/0.64 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 0.43/0.64 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))) of role axiom named proj1_Sigma
% 0.43/0.64 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 0.43/0.64 FOF formula (<kernel.Constant object at 0x2aea2bd46290>, <kernel.DependentProduct object at 0x2aea2bd46e18>) of role type named typ_setprod
% 0.43/0.64 Using role type
% 0.43/0.64 Declaring setprod:(fofType->(fofType->fofType))
% 0.43/0.64 FOF formula (((eq (fofType->(fofType->fofType))) setprod) (fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1)))) of role definition named def_setprod
% 0.43/0.64 A new definition: (((eq (fofType->(fofType->fofType))) setprod) (fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))))
% 0.43/0.64 Defined: setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1)))
% 0.43/0.64 FOF formula (<kernel.Constant object at 0x2aea2bd46e18>, <kernel.DependentProduct object at 0x2aea2bd46cb0>) of role type named typ_ap
% 0.43/0.64 Using role type
% 0.43/0.64 Declaring ap:(fofType->(fofType->fofType))
% 0.43/0.64 FOF formula (((eq (fofType->(fofType->fofType))) ap) (fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1))) of role definition named def_ap
% 0.43/0.64 A new definition: (((eq (fofType->(fofType->fofType))) ap) (fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)))
% 0.43/0.64 Defined: ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1))
% 0.43/0.64 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2)))) of role axiom named beta
% 0.43/0.64 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 0.43/0.64 FOF formula (<kernel.Constant object at 0x2aea2bd46ea8>, <kernel.DependentProduct object at 0x2aea2bd46440>) of role type named typ_pair_p
% 0.43/0.64 Using role type
% 0.43/0.64 Declaring pair_p:(fofType->Prop)
% 0.43/0.64 FOF formula (((eq (fofType->Prop)) pair_p) (fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0))) of role definition named def_pair_p
% 0.43/0.64 A new definition: (((eq (fofType->Prop)) pair_p) (fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)))
% 0.43/0.64 Defined: pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0))
% 0.43/0.64 FOF formula (<kernel.Constant object at 0x2aea2bd46290>, <kernel.DependentProduct object at 0x2aea2bd46cb0>) of role type named typ_d_Pi
% 0.43/0.64 Using role type
% 0.43/0.64 Declaring d_Pi:(fofType->((fofType->fofType)->fofType))
% 0.43/0.64 FOF formula (((eq (fofType->((fofType->fofType)->fofType))) d_Pi) (fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))))) of role definition named def_d_Pi
% 0.43/0.64 A new definition: (((eq (fofType->((fofType->fofType)->fofType))) d_Pi) (fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))))
% 0.43/0.64 Defined: d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))))
% 0.48/0.66 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1)))) of role axiom named lam_Pi
% 0.48/0.66 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 0.48/0.66 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))) of role axiom named ap_Pi
% 0.48/0.66 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 0.48/0.66 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3)))))) of role axiom named k_Pi_ext
% 0.48/0.66 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 0.48/0.66 FOF formula (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2)))) of role axiom named xi_ext
% 0.48/0.66 A new axiom: (forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))
% 0.48/0.66 FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset))))) of role axiom named k_If_In_01
% 0.48/0.66 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 0.48/0.66 FOF formula (forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2)))) of role axiom named k_If_In_then_E
% 0.48/0.66 A new axiom: (forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 0.48/0.66 FOF formula (<kernel.Constant object at 0x2aea2bd46290>, <kernel.DependentProduct object at 0x2aea2f3a2440>) of role type named typ_imp
% 0.48/0.66 Using role type
% 0.48/0.66 Declaring imp:(Prop->(Prop->Prop))
% 0.48/0.66 FOF formula (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1))) of role definition named def_imp
% 0.48/0.66 A new definition: (((eq (Prop->(Prop->Prop))) imp) (fun (X0:Prop) (X1:Prop)=> (X0->X1)))
% 0.48/0.66 Defined: imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1))
% 0.48/0.66 FOF formula (<kernel.Constant object at 0x2aea2f3a2440>, <kernel.DependentProduct object at 0x2aea2f3a24d0>) of role type named typ_d_not
% 0.48/0.66 Using role type
% 0.48/0.66 Declaring d_not:(Prop->Prop)
% 0.48/0.66 FOF formula (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False))) of role definition named def_d_not
% 0.48/0.66 A new definition: (((eq (Prop->Prop)) d_not) (fun (X0:Prop)=> ((imp X0) False)))
% 0.48/0.66 Defined: d_not:=(fun (X0:Prop)=> ((imp X0) False))
% 0.48/0.66 FOF formula (<kernel.Constant object at 0x2aea2f3a24d0>, <kernel.DependentProduct object at 0x2aea2f3a27e8>) of role type named typ_wel
% 0.48/0.66 Using role type
% 0.48/0.66 Declaring wel:(Prop->Prop)
% 0.48/0.66 FOF formula (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0)))) of role definition named def_wel
% 0.48/0.66 A new definition: (((eq (Prop->Prop)) wel) (fun (X0:Prop)=> (d_not (d_not X0))))
% 0.48/0.66 Defined: wel:=(fun (X0:Prop)=> (d_not (d_not X0)))
% 0.48/0.66 FOF formula (forall (X0:Prop), ((wel X0)->X0)) of role axiom named l_et
% 0.48/0.66 A new axiom: (forall (X0:Prop), ((wel X0)->X0))
% 0.48/0.66 FOF formula (<kernel.Constant object at 0x2aea2f3a2128>, <kernel.Sort object at 0x2aea24381680>) of role type named typ_obvious
% 0.48/0.66 Using role type
% 0.48/0.66 Declaring obvious:Prop
% 0.48/0.66 FOF formula (((eq Prop) obvious) ((imp False) False)) of role definition named def_obvious
% 0.48/0.66 A new definition: (((eq Prop) obvious) ((imp False) False))
% 0.48/0.67 Defined: obvious:=((imp False) False)
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2320>, <kernel.DependentProduct object at 0x2aea2f3a2050>) of role type named typ_l_ec
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring l_ec:(Prop->(Prop->Prop))
% 0.48/0.67 FOF formula (((eq (Prop->(Prop->Prop))) l_ec) (fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1)))) of role definition named def_l_ec
% 0.48/0.67 A new definition: (((eq (Prop->(Prop->Prop))) l_ec) (fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))))
% 0.48/0.67 Defined: l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2050>, <kernel.DependentProduct object at 0x2aea2f3a2128>) of role type named typ_d_and
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring d_and:(Prop->(Prop->Prop))
% 0.48/0.67 FOF formula (((eq (Prop->(Prop->Prop))) d_and) (fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1)))) of role definition named def_d_and
% 0.48/0.67 A new definition: (((eq (Prop->(Prop->Prop))) d_and) (fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))))
% 0.48/0.67 Defined: d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2128>, <kernel.DependentProduct object at 0x2aea2f3a2320>) of role type named typ_l_or
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring l_or:(Prop->(Prop->Prop))
% 0.48/0.67 FOF formula (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0)))) of role definition named def_l_or
% 0.48/0.67 A new definition: (((eq (Prop->(Prop->Prop))) l_or) (fun (X0:Prop)=> (imp (d_not X0))))
% 0.48/0.67 Defined: l_or:=(fun (X0:Prop)=> (imp (d_not X0)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2320>, <kernel.DependentProduct object at 0x2aea2f3a26c8>) of role type named typ_orec
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring orec:(Prop->(Prop->Prop))
% 0.48/0.67 FOF formula (((eq (Prop->(Prop->Prop))) orec) (fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1)))) of role definition named def_orec
% 0.48/0.67 A new definition: (((eq (Prop->(Prop->Prop))) orec) (fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))))
% 0.48/0.67 Defined: orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a26c8>, <kernel.DependentProduct object at 0x2aea2f3a2128>) of role type named typ_l_iff
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring l_iff:(Prop->(Prop->Prop))
% 0.48/0.67 FOF formula (((eq (Prop->(Prop->Prop))) l_iff) (fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0)))) of role definition named def_l_iff
% 0.48/0.67 A new definition: (((eq (Prop->(Prop->Prop))) l_iff) (fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))))
% 0.48/0.67 Defined: l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2128>, <kernel.DependentProduct object at 0x2aea2f3a2878>) of role type named typ_all
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring all:(fofType->((fofType->Prop)->Prop))
% 0.48/0.67 FOF formula (((eq (fofType->((fofType->Prop)->Prop))) all) (fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0))))) of role definition named def_all
% 0.48/0.67 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) all) (fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))))
% 0.48/0.67 Defined: all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0))))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2878>, <kernel.DependentProduct object at 0x2aea2f3a2c68>) of role type named typ_non
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring non:(fofType->((fofType->Prop)->(fofType->Prop)))
% 0.48/0.67 FOF formula (((eq (fofType->((fofType->Prop)->(fofType->Prop)))) non) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2)))) of role definition named def_non
% 0.48/0.67 A new definition: (((eq (fofType->((fofType->Prop)->(fofType->Prop)))) non) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))))
% 0.48/0.67 Defined: non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2)))
% 0.48/0.67 FOF formula (<kernel.Constant object at 0x2aea2f3a2c68>, <kernel.DependentProduct object at 0x2aea2f3a2680>) of role type named typ_l_some
% 0.48/0.67 Using role type
% 0.48/0.67 Declaring l_some:(fofType->((fofType->Prop)->Prop))
% 0.48/0.67 FOF formula (((eq (fofType->((fofType->Prop)->Prop))) l_some) (fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1))))) of role definition named def_l_some
% 0.48/0.69 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) l_some) (fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))))
% 0.48/0.69 Defined: l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1))))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2aea2f3a2680>, <kernel.DependentProduct object at 0x2aea2f3a2cb0>) of role type named typ_or3
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring or3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.69 FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) or3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2)))) of role definition named def_or3
% 0.48/0.69 A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) or3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))))
% 0.48/0.69 Defined: or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2)))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2aea2f3a2cb0>, <kernel.DependentProduct object at 0x2aea2f3a2a70>) of role type named typ_and3
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring and3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.69 FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) and3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2)))) of role definition named def_and3
% 0.48/0.69 A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) and3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))))
% 0.48/0.69 Defined: and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2)))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2aea2f3a2a70>, <kernel.DependentProduct object at 0x2aea2f3a2cf8>) of role type named typ_ec3
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring ec3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.69 FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) ec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0)))) of role definition named def_ec3
% 0.48/0.69 A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) ec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))))
% 0.48/0.69 Defined: ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0)))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2aea2f3a2cf8>, <kernel.DependentProduct object at 0x2aea2f3a2d40>) of role type named typ_orec3
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring orec3:(Prop->(Prop->(Prop->Prop)))
% 0.48/0.69 FOF formula (((eq (Prop->(Prop->(Prop->Prop)))) orec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2)))) of role definition named def_orec3
% 0.48/0.69 A new definition: (((eq (Prop->(Prop->(Prop->Prop)))) orec3) (fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))))
% 0.48/0.69 Defined: orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2)))
% 0.48/0.69 FOF formula (<kernel.Constant object at 0x2aea2f3a2d40>, <kernel.DependentProduct object at 0x2aea2f3a2cb0>) of role type named typ_e_is
% 0.48/0.69 Using role type
% 0.48/0.69 Declaring e_is:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.69 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) e_is) (fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))) of role definition named def_e_is
% 0.48/0.69 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) e_is) (fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)))
% 0.48/0.69 Defined: e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y))
% 0.48/0.69 FOF formula (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1)))) of role axiom named refis
% 0.48/0.69 A new axiom: (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 0.48/0.69 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3)))))))) of role axiom named e_isp
% 0.48/0.69 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 0.48/0.71 FOF formula (<kernel.Constant object at 0x2aea2f3a2cf8>, <kernel.DependentProduct object at 0x2aea2f3a26c8>) of role type named typ_amone
% 0.48/0.71 Using role type
% 0.48/0.71 Declaring amone:(fofType->((fofType->Prop)->Prop))
% 0.48/0.71 FOF formula (((eq (fofType->((fofType->Prop)->Prop))) amone) (fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3))))))))) of role definition named def_amone
% 0.48/0.71 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) amone) (fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))))
% 0.48/0.71 Defined: amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3))))))))
% 0.48/0.71 FOF formula (<kernel.Constant object at 0x2aea2f3a26c8>, <kernel.DependentProduct object at 0x2aea2f3a2f80>) of role type named typ_one
% 0.48/0.71 Using role type
% 0.48/0.71 Declaring one:(fofType->((fofType->Prop)->Prop))
% 0.48/0.71 FOF formula (((eq (fofType->((fofType->Prop)->Prop))) one) (fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1)))) of role definition named def_one
% 0.48/0.71 A new definition: (((eq (fofType->((fofType->Prop)->Prop))) one) (fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))))
% 0.48/0.71 Defined: one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1)))
% 0.48/0.71 FOF formula (<kernel.Constant object at 0x2aea2f3a2f80>, <kernel.DependentProduct object at 0x2aea2f3a2d88>) of role type named typ_ind
% 0.48/0.71 Using role type
% 0.48/0.71 Declaring ind:(fofType->((fofType->Prop)->fofType))
% 0.48/0.71 FOF formula (((eq (fofType->((fofType->Prop)->fofType))) ind) (fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2)))))) of role definition named def_ind
% 0.48/0.71 A new definition: (((eq (fofType->((fofType->Prop)->fofType))) ind) (fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))))
% 0.48/0.71 Defined: ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2)))))
% 0.48/0.71 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0))))) of role axiom named ind_p
% 0.48/0.71 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 0.48/0.71 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))) of role axiom named oneax
% 0.48/0.71 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 0.48/0.71 FOF formula (<kernel.Constant object at 0x2aea2f3a2cf8>, <kernel.DependentProduct object at 0x2aea2f3a2fc8>) of role type named typ_injective
% 0.48/0.71 Using role type
% 0.48/0.71 Declaring injective:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.71 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) injective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4)))))))) of role definition named def_injective
% 0.48/0.71 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) injective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))))
% 0.48/0.71 Defined: injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4)))))))
% 0.48/0.71 FOF formula (<kernel.Constant object at 0x2aea2f3a2d88>, <kernel.DependentProduct object at 0x2aea2f3a2560>) of role type named typ_image
% 0.48/0.71 Using role type
% 0.48/0.71 Declaring image:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.48/0.71 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) image) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))) of role definition named def_image
% 0.48/0.72 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) image) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))))
% 0.48/0.72 Defined: image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))
% 0.48/0.72 FOF formula (<kernel.Constant object at 0x2aea2f3a2cf8>, <kernel.DependentProduct object at 0x2aea2f3a8050>) of role type named typ_tofs
% 0.48/0.72 Using role type
% 0.48/0.72 Declaring tofs:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.48/0.72 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap)) of role definition named def_tofs
% 0.48/0.72 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) tofs) (fun (X0:fofType) (X1:fofType)=> ap))
% 0.48/0.72 Defined: tofs:=(fun (X0:fofType) (X1:fofType)=> ap)
% 0.48/0.72 FOF formula (<kernel.Constant object at 0x2aea2f3a2d88>, <kernel.DependentProduct object at 0x2aea2f3a8290>) of role type named typ_soft
% 0.48/0.72 Using role type
% 0.48/0.72 Declaring soft:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.48/0.72 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) soft) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))) of role definition named def_soft
% 0.48/0.72 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) soft) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))))
% 0.48/0.72 Defined: soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4)))))
% 0.48/0.72 FOF formula (<kernel.Constant object at 0x2aea2f3a2d88>, <kernel.DependentProduct object at 0x2aea2f3a8290>) of role type named typ_inverse
% 0.48/0.72 Using role type
% 0.48/0.72 Declaring inverse:(fofType->(fofType->(fofType->fofType)))
% 0.48/0.72 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) inverse) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset))))) of role definition named def_inverse
% 0.48/0.72 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) inverse) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))))
% 0.48/0.72 Defined: inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset))))
% 0.48/0.72 FOF formula (<kernel.Constant object at 0x2aea2f3a2d88>, <kernel.DependentProduct object at 0x2aea2f3a87e8>) of role type named typ_surjective
% 0.48/0.72 Using role type
% 0.48/0.72 Declaring surjective:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.72 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) surjective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2)))) of role definition named def_surjective
% 0.48/0.72 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) surjective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))))
% 0.48/0.72 Defined: surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2)))
% 0.48/0.72 FOF formula (<kernel.Constant object at 0x2aea2f3a87e8>, <kernel.DependentProduct object at 0x2aea2f3a83b0>) of role type named typ_bijective
% 0.48/0.72 Using role type
% 0.48/0.72 Declaring bijective:(fofType->(fofType->(fofType->Prop)))
% 0.48/0.72 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) bijective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2)))) of role definition named def_bijective
% 0.48/0.72 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) bijective) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))))
% 0.48/0.72 Defined: bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2)))
% 0.56/0.74 FOF formula (<kernel.Constant object at 0x2aea2f3a83b0>, <kernel.DependentProduct object at 0x2aea2f3a83f8>) of role type named typ_invf
% 0.56/0.74 Using role type
% 0.56/0.74 Declaring invf:(fofType->(fofType->(fofType->fofType)))
% 0.56/0.74 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) invf) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2)))) of role definition named def_invf
% 0.56/0.74 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) invf) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))))
% 0.56/0.74 Defined: invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2)))
% 0.56/0.74 FOF formula (<kernel.Constant object at 0x2aea2f3a83f8>, <kernel.DependentProduct object at 0x2aea2f3a8128>) of role type named typ_inj_h
% 0.56/0.74 Using role type
% 0.56/0.74 Declaring inj_h:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.56/0.74 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) inj_h) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5)))))) of role definition named def_inj_h
% 0.56/0.74 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) inj_h) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))))
% 0.56/0.74 Defined: inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5)))))
% 0.56/0.74 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3))))))) of role axiom named e_fisi
% 0.56/0.74 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 0.56/0.74 FOF formula (<kernel.Constant object at 0x2aea2f3a8998>, <kernel.DependentProduct object at 0x2aea2f3a81b8>) of role type named typ_e_in
% 0.56/0.74 Using role type
% 0.56/0.74 Declaring e_in:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.56/0.74 FOF formula (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) e_in) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2)) of role definition named def_e_in
% 0.56/0.74 A new definition: (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) e_in) (fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2))
% 0.56/0.74 Defined: e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2)
% 0.56/0.74 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))) of role axiom named e_in_p
% 0.56/0.74 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 0.56/0.74 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2))))) of role axiom named e_inp
% 0.56/0.74 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 0.56/0.74 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))) of role axiom named otax1
% 0.56/0.74 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 0.56/0.74 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2))))) of role axiom named otax2
% 0.56/0.76 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 0.56/0.76 FOF formula (<kernel.Constant object at 0x2aea2f3a8170>, <kernel.DependentProduct object at 0x2aea2f3a8cf8>) of role type named typ_out
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring out:(fofType->((fofType->Prop)->(fofType->fofType)))
% 0.56/0.76 FOF formula (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) out) (fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))) of role definition named def_out
% 0.56/0.76 A new definition: (((eq (fofType->((fofType->Prop)->(fofType->fofType)))) out) (fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))))
% 0.56/0.76 Defined: out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 0.56/0.76 FOF formula (<kernel.Constant object at 0x2aea2f3a8cf8>, <kernel.DependentProduct object at 0x2aea2f3a8638>) of role type named typ_d_pair
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring d_pair:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.56/0.76 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair)) of role definition named def_d_pair
% 0.56/0.76 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) d_pair) (fun (X0:fofType) (X1:fofType)=> pair))
% 0.56/0.76 Defined: d_pair:=(fun (X0:fofType) (X1:fofType)=> pair)
% 0.56/0.76 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1))))))))) of role axiom named e_pair_p
% 0.56/0.76 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 0.56/0.76 FOF formula (<kernel.Constant object at 0x2aea2f3a89e0>, <kernel.DependentProduct object at 0x2aea2f3a8b48>) of role type named typ_first
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring first:(fofType->(fofType->(fofType->fofType)))
% 0.56/0.76 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0)) of role definition named def_first
% 0.56/0.76 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) first) (fun (X0:fofType) (X1:fofType)=> proj0))
% 0.56/0.76 Defined: first:=(fun (X0:fofType) (X1:fofType)=> proj0)
% 0.56/0.76 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))) of role axiom named first_p
% 0.56/0.76 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 0.56/0.76 FOF formula (<kernel.Constant object at 0x2aea2f3a82d8>, <kernel.DependentProduct object at 0x2aea2f3a8a28>) of role type named typ_second
% 0.56/0.76 Using role type
% 0.56/0.76 Declaring second:(fofType->(fofType->(fofType->fofType)))
% 0.56/0.76 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)) of role definition named def_second
% 0.56/0.76 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) second) (fun (X0:fofType) (X1:fofType)=> _TPTP_proj1))
% 0.56/0.76 Defined: second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1)
% 0.56/0.76 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1)))))) of role axiom named second_p
% 0.56/0.76 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 0.59/0.78 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2)))) of role axiom named pairis1
% 0.59/0.78 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 0.59/0.78 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2)))))) of role axiom named firstis1
% 0.59/0.78 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 0.59/0.78 FOF formula (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3)))))) of role axiom named secondis1
% 0.59/0.78 A new axiom: (forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 0.59/0.78 FOF formula (<kernel.Constant object at 0x2aea2f3a87a0>, <kernel.DependentProduct object at 0x2aea2f3a8fc8>) of role type named typ_prop1
% 0.59/0.78 Using role type
% 0.59/0.78 Declaring prop1:(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 0.59/0.78 FOF formula (((eq (Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))) prop1) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3))))) of role definition named def_prop1
% 0.59/0.78 A new definition: (((eq (Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))) prop1) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))))
% 0.59/0.78 Defined: prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3))))
% 0.59/0.78 FOF formula (<kernel.Constant object at 0x2aea2f3a8fc8>, <kernel.DependentProduct object at 0x2aea2f3a87a0>) of role type named typ_ite
% 0.59/0.78 Using role type
% 0.59/0.78 Declaring ite:(Prop->(fofType->(fofType->(fofType->fofType))))
% 0.59/0.78 FOF formula (((eq (Prop->(fofType->(fofType->(fofType->fofType))))) ite) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3)))) of role definition named def_ite
% 0.59/0.78 A new definition: (((eq (Prop->(fofType->(fofType->(fofType->fofType))))) ite) (fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))))
% 0.59/0.78 Defined: ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3)))
% 0.59/0.78 FOF formula (<kernel.Constant object at 0x2aea2f3a87a0>, <kernel.DependentProduct object at 0x2aea2f3a8dd0>) of role type named typ_wissel_wa
% 0.59/0.78 Using role type
% 0.59/0.78 Declaring wissel_wa:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.59/0.78 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wa) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3))) of role definition named def_wissel_wa
% 0.59/0.78 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wa) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)))
% 0.59/0.78 Defined: wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3))
% 0.59/0.78 FOF formula (<kernel.Constant object at 0x2aea2f3a8dd0>, <kernel.DependentProduct object at 0x2aea2f3a85a8>) of role type named typ_wissel_wb
% 0.59/0.79 Using role type
% 0.59/0.79 Declaring wissel_wb:(fofType->(fofType->(fofType->(fofType->fofType))))
% 0.59/0.79 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wb) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3)))) of role definition named def_wissel_wb
% 0.59/0.79 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->fofType))))) wissel_wb) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))))
% 0.59/0.79 Defined: wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3)))
% 0.59/0.79 FOF formula (<kernel.Constant object at 0x2aea2f3a85a8>, <kernel.DependentProduct object at 0x2aea2f3a8f38>) of role type named typ_wissel
% 0.59/0.79 Using role type
% 0.59/0.79 Declaring wissel:(fofType->(fofType->(fofType->fofType)))
% 0.59/0.79 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) wissel) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2)))) of role definition named def_wissel
% 0.59/0.79 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) wissel) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))))
% 0.59/0.79 Defined: wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2)))
% 0.59/0.79 FOF formula (<kernel.Constant object at 0x2aea2f3a8f38>, <kernel.DependentProduct object at 0x2aea2f3a83b0>) of role type named typ_changef
% 0.59/0.79 Using role type
% 0.59/0.79 Declaring changef:(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 0.59/0.79 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) changef) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5)))))) of role definition named def_changef
% 0.59/0.79 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))) changef) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))))
% 0.59/0.79 Defined: changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5)))))
% 0.59/0.79 FOF formula (<kernel.Constant object at 0x2aea2f3a8e60>, <kernel.DependentProduct object at 0x2aea2f3a87a0>) of role type named typ_r_ec
% 0.59/0.79 Using role type
% 0.59/0.79 Declaring r_ec:(Prop->(Prop->Prop))
% 0.59/0.79 FOF formula (((eq (Prop->(Prop->Prop))) r_ec) (fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1)))) of role definition named def_r_ec
% 0.59/0.79 A new definition: (((eq (Prop->(Prop->Prop))) r_ec) (fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))))
% 0.59/0.79 Defined: r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1)))
% 0.59/0.79 FOF formula (<kernel.Constant object at 0x2aea2f3a87a0>, <kernel.DependentProduct object at 0x2aea2f3a8fc8>) of role type named typ_esti
% 0.59/0.79 Using role type
% 0.59/0.79 Declaring esti:(fofType->(fofType->(fofType->Prop)))
% 0.59/0.79 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in)) of role definition named def_esti
% 0.59/0.79 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) esti) (fun (X0:fofType)=> in))
% 0.59/0.79 Defined: esti:=(fun (X0:fofType)=> in)
% 0.59/0.79 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0))))) of role axiom named setof_p
% 0.59/0.79 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 0.59/0.79 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1)))))) of role axiom named estii
% 0.59/0.79 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 0.59/0.79 FOF formula (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2))))) of role axiom named estie
% 0.59/0.81 A new axiom: (forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2aea2f3a8fc8>, <kernel.DependentProduct object at 0x2aea2f3a8ea8>) of role type named typ_empty
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring empty:(fofType->(fofType->Prop))
% 0.59/0.81 FOF formula (((eq (fofType->(fofType->Prop))) empty) (fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))) of role definition named def_empty
% 0.59/0.81 A new definition: (((eq (fofType->(fofType->Prop))) empty) (fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))))
% 0.59/0.81 Defined: empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2aea2f3a88c0>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_nonempty
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring nonempty:(fofType->(fofType->Prop))
% 0.59/0.81 FOF formula (((eq (fofType->(fofType->Prop))) nonempty) (fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))) of role definition named def_nonempty
% 0.59/0.81 A new definition: (((eq (fofType->(fofType->Prop))) nonempty) (fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))))
% 0.59/0.81 Defined: nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2aea2f3a8f80>, <kernel.DependentProduct object at 0x2aea2f3ae248>) of role type named typ_incl
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring incl:(fofType->(fofType->(fofType->Prop)))
% 0.59/0.81 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) incl) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2)))))) of role definition named def_incl
% 0.59/0.81 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) incl) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))))
% 0.59/0.81 Defined: incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2)))))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2aea2f3a8f80>, <kernel.DependentProduct object at 0x2aea2f3ae1b8>) of role type named typ_st_disj
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring st_disj:(fofType->(fofType->(fofType->Prop)))
% 0.59/0.81 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) st_disj) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2)))))) of role definition named def_st_disj
% 0.59/0.81 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) st_disj) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))))
% 0.59/0.81 Defined: st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2)))))
% 0.59/0.81 FOF formula (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2)))))))) of role axiom named isseti
% 0.59/0.81 A new axiom: (forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 0.59/0.81 FOF formula (<kernel.Constant object at 0x2aea2f3a8f80>, <kernel.DependentProduct object at 0x2aea2f3ae5f0>) of role type named typ_nissetprop
% 0.59/0.81 Using role type
% 0.59/0.81 Declaring nissetprop:(fofType->(fofType->(fofType->(fofType->Prop))))
% 0.59/0.81 FOF formula (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) nissetprop) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2))))) of role definition named def_nissetprop
% 0.59/0.82 A new definition: (((eq (fofType->(fofType->(fofType->(fofType->Prop))))) nissetprop) (fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))))
% 0.59/0.82 Defined: nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2))))
% 0.59/0.82 FOF formula (<kernel.Constant object at 0x2aea2f3ae5f0>, <kernel.DependentProduct object at 0x2aea2f3ae1b8>) of role type named typ_unmore
% 0.59/0.82 Using role type
% 0.59/0.82 Declaring unmore:(fofType->(fofType->(fofType->fofType)))
% 0.59/0.82 FOF formula (((eq (fofType->(fofType->(fofType->fofType)))) unmore) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4)))))))) of role definition named def_unmore
% 0.59/0.82 A new definition: (((eq (fofType->(fofType->(fofType->fofType)))) unmore) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))))
% 0.59/0.82 Defined: unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4)))))))
% 0.59/0.82 FOF formula (<kernel.Constant object at 0x2aea2f3ae1b8>, <kernel.DependentProduct object at 0x2aea2f3ae7e8>) of role type named typ_ecelt
% 0.59/0.82 Using role type
% 0.59/0.82 Declaring ecelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.59/0.82 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2)))) of role definition named def_ecelt
% 0.59/0.82 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))))
% 0.59/0.82 Defined: ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2)))
% 0.59/0.82 FOF formula (<kernel.Constant object at 0x2aea2f3ae7e8>, <kernel.DependentProduct object at 0x2aea2f3ae7a0>) of role type named typ_ecp
% 0.59/0.82 Using role type
% 0.59/0.82 Declaring ecp:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.59/0.82 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) ecp) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3)))) of role definition named def_ecp
% 0.59/0.82 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) ecp) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))))
% 0.59/0.82 Defined: ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3)))
% 0.59/0.82 FOF formula (<kernel.Constant object at 0x2aea2f3ae7a0>, <kernel.DependentProduct object at 0x2aea2f3aeb00>) of role type named typ_anec
% 0.59/0.82 Using role type
% 0.59/0.82 Declaring anec:(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 0.59/0.82 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->Prop)))) anec) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2)))) of role definition named def_anec
% 0.59/0.83 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->Prop)))) anec) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))))
% 0.59/0.83 Defined: anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2)))
% 0.59/0.83 FOF formula (<kernel.Constant object at 0x2aea2f3aeb00>, <kernel.DependentProduct object at 0x2aea2f3ae7e8>) of role type named typ_ect
% 0.59/0.83 Using role type
% 0.59/0.83 Declaring ect:(fofType->((fofType->(fofType->Prop))->fofType))
% 0.59/0.83 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->fofType))) ect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1)))) of role definition named def_ect
% 0.59/0.83 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->fofType))) ect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))))
% 0.65/0.84 Defined: ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1)))
% 0.65/0.84 FOF formula (<kernel.Constant object at 0x2aea2f3ae7e8>, <kernel.DependentProduct object at 0x2aea2f3ae200>) of role type named typ_ectset
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring ectset:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.65/0.84 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectset) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1)))) of role definition named def_ectset
% 0.65/0.84 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectset) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))))
% 0.65/0.84 Defined: ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1)))
% 0.65/0.84 FOF formula (<kernel.Constant object at 0x2aea2f3ae200>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_ectelt
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring ectelt:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.65/0.84 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2)))) of role definition named def_ectelt
% 0.65/0.84 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ectelt) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))))
% 0.65/0.84 Defined: ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2)))
% 0.65/0.84 FOF formula (<kernel.Constant object at 0x2aea2f3ae050>, <kernel.DependentProduct object at 0x2aea2f3ae9e0>) of role type named typ_ecect
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring ecect:(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 0.65/0.84 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1)))) of role definition named def_ecect
% 0.65/0.84 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->fofType)))) ecect) (fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))))
% 0.65/0.84 Defined: ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1)))
% 0.65/0.84 FOF formula (<kernel.Constant object at 0x2aea2f3ae9e0>, <kernel.DependentProduct object at 0x2aea2f3ae3f8>) of role type named typ_fixfu
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring fixfu:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.65/0.84 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5))))))))) of role definition named def_fixfu
% 0.65/0.84 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))))
% 0.65/0.84 Defined: fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5))))))))
% 0.65/0.84 FOF formula (<kernel.Constant object at 0x2aea2f3ae3f8>, <kernel.DependentProduct object at 0x2aea2f3ae878>) of role type named typ_d_10_prop1
% 0.65/0.84 Using role type
% 0.65/0.84 Declaring d_10_prop1:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 0.65/0.84 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))) d_10_prop1) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5)))) of role definition named def_d_10_prop1
% 0.67/0.86 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))) d_10_prop1) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))))
% 0.67/0.86 Defined: d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5)))
% 0.67/0.86 FOF formula (<kernel.Constant object at 0x2aea2f3ae878>, <kernel.DependentProduct object at 0x2aea2f3aeab8>) of role type named typ_prop2
% 0.67/0.86 Using role type
% 0.67/0.86 Declaring prop2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 0.67/0.86 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))) prop2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5)))) of role definition named def_prop2
% 0.67/0.86 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))) prop2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))))
% 0.67/0.86 Defined: prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5)))
% 0.67/0.86 FOF formula (<kernel.Constant object at 0x2aea2f3aeab8>, <kernel.DependentProduct object at 0x2aea2f3ae1b8>) of role type named typ_indeq
% 0.67/0.86 Using role type
% 0.67/0.86 Declaring indeq:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.67/0.86 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) indeq) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4)))) of role definition named def_indeq
% 0.67/0.86 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) indeq) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))))
% 0.67/0.86 Defined: indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4)))
% 0.67/0.86 FOF formula (<kernel.Constant object at 0x2aea2f3ae1b8>, <kernel.DependentProduct object at 0x2aea2f3ae680>) of role type named typ_fixfu2
% 0.67/0.86 Using role type
% 0.67/0.86 Declaring fixfu2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 0.67/0.86 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7)))))))))))))) of role definition named def_fixfu2
% 0.67/0.86 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))) fixfu2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))))
% 0.67/0.86 Defined: fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7)))))))))))))
% 0.67/0.87 FOF formula (<kernel.Constant object at 0x2aea2f3ae680>, <kernel.DependentProduct object at 0x2aea2f3ae440>) of role type named typ_d_11_i
% 0.67/0.87 Using role type
% 0.67/0.87 Declaring d_11_i:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 0.67/0.87 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) d_11_i) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2))))) of role definition named def_d_11_i
% 0.67/0.87 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))) d_11_i) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))))
% 0.67/0.87 Defined: d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2))))
% 0.67/0.87 FOF formula (<kernel.Constant object at 0x2aea2f3ae440>, <kernel.DependentProduct object at 0x2aea2f3aea70>) of role type named typ_indeq2
% 0.67/0.87 Using role type
% 0.67/0.87 Declaring indeq2:(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 0.67/0.87 FOF formula (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))) indeq2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4)))) of role definition named def_indeq2
% 0.67/0.87 A new definition: (((eq (fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))) indeq2) (fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))))
% 0.67/0.87 Defined: indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4)))
% 0.67/0.87 FOF formula (<kernel.Constant object at 0x2aea2f3aea70>, <kernel.Single object at 0x2aea2f3ae440>) of role type named typ_nat
% 0.67/0.87 Using role type
% 0.67/0.87 Declaring nat:fofType
% 0.67/0.87 FOF formula (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))) of role definition named def_nat
% 0.67/0.87 A new definition: (((eq fofType) nat) ((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))))
% 0.67/0.87 Defined: nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset))))
% 0.67/0.87 FOF formula (<kernel.Constant object at 0x2aea2f3ae440>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_n_is
% 0.67/0.87 Using role type
% 0.67/0.87 Declaring n_is:(fofType->(fofType->Prop))
% 0.67/0.87 FOF formula (((eq (fofType->(fofType->Prop))) n_is) (e_is nat)) of role definition named def_n_is
% 0.67/0.87 A new definition: (((eq (fofType->(fofType->Prop))) n_is) (e_is nat))
% 0.67/0.87 Defined: n_is:=(e_is nat)
% 0.67/0.87 FOF formula (<kernel.Constant object at 0x2aea2f3aef38>, <kernel.DependentProduct object at 0x2aea2f3aecb0>) of role type named typ_nis
% 0.67/0.87 Using role type
% 0.67/0.87 Declaring nis:(fofType->(fofType->Prop))
% 0.67/0.87 FOF formula (((eq (fofType->(fofType->Prop))) nis) (fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1)))) of role definition named def_nis
% 0.67/0.87 A new definition: (((eq (fofType->(fofType->Prop))) nis) (fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))))
% 0.67/0.87 Defined: nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1)))
% 0.67/0.87 FOF formula (<kernel.Constant object at 0x2aea2f3aecb0>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_n_in
% 0.67/0.87 Using role type
% 0.67/0.87 Declaring n_in:(fofType->(fofType->Prop))
% 0.67/0.87 FOF formula (((eq (fofType->(fofType->Prop))) n_in) (esti nat)) of role definition named def_n_in
% 0.67/0.87 A new definition: (((eq (fofType->(fofType->Prop))) n_in) (esti nat))
% 0.67/0.88 Defined: n_in:=(esti nat)
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3ae9e0>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_n_some
% 0.67/0.88 Using role type
% 0.67/0.88 Declaring n_some:((fofType->Prop)->Prop)
% 0.67/0.88 FOF formula (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat)) of role definition named def_n_some
% 0.67/0.88 A new definition: (((eq ((fofType->Prop)->Prop)) n_some) (l_some nat))
% 0.67/0.88 Defined: n_some:=(l_some nat)
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3aef80>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_n_all
% 0.67/0.88 Using role type
% 0.67/0.88 Declaring n_all:((fofType->Prop)->Prop)
% 0.67/0.88 FOF formula (((eq ((fofType->Prop)->Prop)) n_all) (all nat)) of role definition named def_n_all
% 0.67/0.88 A new definition: (((eq ((fofType->Prop)->Prop)) n_all) (all nat))
% 0.67/0.88 Defined: n_all:=(all nat)
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3aec68>, <kernel.DependentProduct object at 0x2aea2f3ae050>) of role type named typ_n_one
% 0.67/0.88 Using role type
% 0.67/0.88 Declaring n_one:((fofType->Prop)->Prop)
% 0.67/0.88 FOF formula (((eq ((fofType->Prop)->Prop)) n_one) (one nat)) of role definition named def_n_one
% 0.67/0.88 A new definition: (((eq ((fofType->Prop)->Prop)) n_one) (one nat))
% 0.67/0.88 Defined: n_one:=(one nat)
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3aecb0>, <kernel.Single object at 0x2aea2f3aec68>) of role type named typ_n_1
% 0.67/0.88 Using role type
% 0.67/0.88 Declaring n_1:fofType
% 0.67/0.88 FOF formula (((eq fofType) n_1) (ordsucc emptyset)) of role definition named def_n_1
% 0.67/0.88 A new definition: (((eq fofType) n_1) (ordsucc emptyset))
% 0.67/0.88 Defined: n_1:=(ordsucc emptyset)
% 0.67/0.88 FOF formula ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))) of role axiom named n_1_p
% 0.67/0.88 A new axiom: ((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 0.67/0.88 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat))))) of role axiom named suc_p
% 0.67/0.88 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 0.67/0.88 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1))) of role axiom named n_ax3
% 0.67/0.88 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 0.67/0.88 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1)))))) of role axiom named n_ax4
% 0.67/0.88 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3ae878>, <kernel.DependentProduct object at 0x2aea2f3b5878>) of role type named typ_cond1
% 0.67/0.88 Using role type
% 0.67/0.88 Declaring cond1:(fofType->Prop)
% 0.67/0.88 FOF formula (((eq (fofType->Prop)) cond1) (n_in n_1)) of role definition named def_cond1
% 0.67/0.88 A new definition: (((eq (fofType->Prop)) cond1) (n_in n_1))
% 0.67/0.88 Defined: cond1:=(n_in n_1)
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3ae878>, <kernel.DependentProduct object at 0x2aea2f3b53b0>) of role type named typ_cond2
% 0.67/0.88 Using role type
% 0.67/0.88 Declaring cond2:(fofType->Prop)
% 0.67/0.88 FOF formula (((eq (fofType->Prop)) cond2) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0)))))) of role definition named def_cond2
% 0.67/0.88 A new definition: (((eq (fofType->Prop)) cond2) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))))
% 0.67/0.88 Defined: cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0)))))
% 0.67/0.88 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0))))))) of role axiom named n_ax5
% 0.67/0.88 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 0.67/0.88 FOF formula (<kernel.Constant object at 0x2aea2f3b5248>, <kernel.DependentProduct object at 0x2aea2f3b5758>) of role type named typ_i1_s
% 0.67/0.90 Using role type
% 0.67/0.90 Declaring i1_s:((fofType->Prop)->fofType)
% 0.67/0.90 FOF formula (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat)) of role definition named def_i1_s
% 0.67/0.90 A new definition: (((eq ((fofType->Prop)->fofType)) i1_s) (d_Sep nat))
% 0.67/0.90 Defined: i1_s:=(d_Sep nat)
% 0.67/0.90 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1))))))) of role axiom named satz1
% 0.67/0.90 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 0.67/0.90 FOF formula (<kernel.Constant object at 0x2aea2bd04d88>, <kernel.DependentProduct object at 0x2aea2bfeddd0>) of role type named typ_d_22_prop1
% 0.67/0.90 Using role type
% 0.67/0.90 Declaring d_22_prop1:(fofType->Prop)
% 0.67/0.90 FOF formula (((eq (fofType->Prop)) d_22_prop1) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))) of role definition named def_d_22_prop1
% 0.67/0.90 A new definition: (((eq (fofType->Prop)) d_22_prop1) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 0.67/0.90 Defined: d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0))
% 0.67/0.90 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))) of role axiom named satz2
% 0.67/0.90 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 0.67/0.90 FOF formula (<kernel.Constant object at 0x2aea2bfed128>, <kernel.DependentProduct object at 0x2aea2bfede60>) of role type named typ_d_23_prop1
% 0.67/0.90 Using role type
% 0.67/0.90 Declaring d_23_prop1:(fofType->Prop)
% 0.67/0.90 FOF formula (((eq (fofType->Prop)) d_23_prop1) (fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))) of role definition named def_d_23_prop1
% 0.67/0.90 A new definition: (((eq (fofType->Prop)) d_23_prop1) (fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 0.67/0.90 Defined: d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))
% 0.67/0.90 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))) of role axiom named satz3
% 0.67/0.90 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 0.67/0.90 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))) of role axiom named satz3a
% 0.67/0.90 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 0.67/0.90 FOF formula (<kernel.Constant object at 0x2aea2bfeddd0>, <kernel.DependentProduct object at 0x2aea2bfedc68>) of role type named typ_d_24_prop1
% 0.67/0.90 Using role type
% 0.67/0.90 Declaring d_24_prop1:(fofType->Prop)
% 0.67/0.90 FOF formula (((eq (fofType->Prop)) d_24_prop1) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1))))))) of role definition named def_d_24_prop1
% 0.67/0.90 A new definition: (((eq (fofType->Prop)) d_24_prop1) (fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))))
% 0.67/0.90 Defined: d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1))))))
% 0.67/0.90 FOF formula (<kernel.Constant object at 0x2aea2bfedc68>, <kernel.DependentProduct object at 0x2aea2bfed6c8>) of role type named typ_d_24_prop2
% 0.67/0.90 Using role type
% 0.67/0.90 Declaring d_24_prop2:(fofType->(fofType->Prop))
% 0.67/0.90 FOF formula (((eq (fofType->(fofType->Prop))) d_24_prop2) (fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1)))) of role definition named def_d_24_prop2
% 0.67/0.90 A new definition: (((eq (fofType->(fofType->Prop))) d_24_prop2) (fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))))
% 0.67/0.90 Defined: d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1)))
% 0.73/0.92 FOF formula (<kernel.Constant object at 0x2aea2bfed6c8>, <kernel.DependentProduct object at 0x2aea2bfedea8>) of role type named typ_prop3
% 0.73/0.92 Using role type
% 0.73/0.92 Declaring prop3:(fofType->(fofType->(fofType->Prop)))
% 0.73/0.92 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) prop3) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2)))) of role definition named def_prop3
% 0.73/0.92 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) prop3) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))))
% 0.73/0.92 Defined: prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2)))
% 0.73/0.92 FOF formula (<kernel.Constant object at 0x2aea2bfedea8>, <kernel.DependentProduct object at 0x2aea2bfed098>) of role type named typ_prop4
% 0.73/0.92 Using role type
% 0.73/0.92 Declaring prop4:(fofType->Prop)
% 0.73/0.92 FOF formula (((eq (fofType->Prop)) prop4) (fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))) of role definition named def_prop4
% 0.73/0.92 A new definition: (((eq (fofType->Prop)) prop4) (fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))))
% 0.73/0.92 Defined: prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))
% 0.73/0.92 FOF formula (<kernel.Constant object at 0x2aea2bfed098>, <kernel.DependentProduct object at 0x2aea2bfed710>) of role type named typ_d_24_g
% 0.73/0.92 Using role type
% 0.73/0.92 Declaring d_24_g:(fofType->fofType)
% 0.73/0.92 FOF formula (((eq (fofType->fofType)) d_24_g) (fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1)))))) of role definition named def_d_24_g
% 0.73/0.92 A new definition: (((eq (fofType->fofType)) d_24_g) (fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))))
% 0.73/0.92 Defined: d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1)))))
% 0.73/0.92 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2)))))))))) of role axiom named satz4
% 0.73/0.92 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 0.73/0.92 FOF formula (<kernel.Constant object at 0x2aea2bfed0e0>, <kernel.DependentProduct object at 0x2aea2bfeda28>) of role type named typ_plus
% 0.73/0.92 Using role type
% 0.73/0.92 Declaring plus:(fofType->fofType)
% 0.73/0.92 FOF formula (((eq (fofType->fofType)) plus) (fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))) of role definition named def_plus
% 0.73/0.92 A new definition: (((eq (fofType->fofType)) plus) (fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))))
% 0.73/0.92 Defined: plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0)))
% 0.73/0.92 FOF formula (<kernel.Constant object at 0x2aea2bbfbdd0>, <kernel.DependentProduct object at 0x2aea2bfedbd8>) of role type named typ_n_pl
% 0.73/0.92 Using role type
% 0.73/0.92 Declaring n_pl:(fofType->(fofType->fofType))
% 0.73/0.92 FOF formula (((eq (fofType->(fofType->fofType))) n_pl) (fun (X0:fofType)=> (ap (plus X0)))) of role definition named def_n_pl
% 0.73/0.92 A new definition: (((eq (fofType->(fofType->fofType))) n_pl) (fun (X0:fofType)=> (ap (plus X0))))
% 0.73/0.92 Defined: n_pl:=(fun (X0:fofType)=> (ap (plus X0)))
% 0.73/0.92 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0)))) of role axiom named satz4a
% 0.73/0.92 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 0.73/0.92 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1))))))) of role axiom named satz4b
% 0.73/0.92 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0)))) of role axiom named satz4c
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1))))))) of role axiom named satz4d
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))) of role axiom named satz4e
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1))))))) of role axiom named satz4f
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0)))) of role axiom named satz4g
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))) of role axiom named satz4h
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))
% 0.73/0.94 FOF formula (<kernel.Constant object at 0x2aea2bfedb90>, <kernel.DependentProduct object at 0x2aea2bfeda28>) of role type named typ_d_25_prop1
% 0.73/0.94 Using role type
% 0.73/0.94 Declaring d_25_prop1:(fofType->(fofType->(fofType->Prop)))
% 0.73/0.94 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) d_25_prop1) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2))))) of role definition named def_d_25_prop1
% 0.73/0.94 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) d_25_prop1) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))))
% 0.73/0.94 Defined: d_25_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2))))
% 0.73/0.94 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2))))))))) of role axiom named satz5
% 0.73/0.94 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))))))))
% 0.73/0.94 FOF formula (<kernel.Constant object at 0x2aea2bfeda28>, <kernel.DependentProduct object at 0x2aea2bfed0e0>) of role type named typ_d_26_prop1
% 0.73/0.94 Using role type
% 0.73/0.94 Declaring d_26_prop1:(fofType->(fofType->Prop))
% 0.73/0.94 FOF formula (((eq (fofType->(fofType->Prop))) d_26_prop1) (fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0)))) of role definition named def_d_26_prop1
% 0.73/0.94 A new definition: (((eq (fofType->(fofType->Prop))) d_26_prop1) (fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))))
% 0.78/0.96 Defined: d_26_prop1:=(fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0)))
% 0.78/0.96 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0)))))) of role axiom named satz6
% 0.78/0.96 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))))))
% 0.78/0.96 FOF formula (<kernel.Constant object at 0x2aea2bfed440>, <kernel.DependentProduct object at 0x2aea2bc25248>) of role type named typ_d_27_prop1
% 0.78/0.96 Using role type
% 0.78/0.96 Declaring d_27_prop1:(fofType->(fofType->Prop))
% 0.78/0.96 FOF formula (((eq (fofType->(fofType->Prop))) d_27_prop1) (fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1)))) of role definition named def_d_27_prop1
% 0.78/0.96 A new definition: (((eq (fofType->(fofType->Prop))) d_27_prop1) (fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1))))
% 0.78/0.96 Defined: d_27_prop1:=(fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1)))
% 0.78/0.96 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1)))))) of role axiom named satz7
% 0.78/0.96 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1))))))
% 0.78/0.96 FOF formula (<kernel.Constant object at 0x2aea2bfed440>, <kernel.DependentProduct object at 0x2aea2bc255a8>) of role type named typ_d_28_prop1
% 0.78/0.96 Using role type
% 0.78/0.96 Declaring d_28_prop1:(fofType->(fofType->(fofType->Prop)))
% 0.78/0.96 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) d_28_prop1) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2)))) of role definition named def_d_28_prop1
% 0.78/0.96 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) d_28_prop1) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2))))
% 0.78/0.96 Defined: d_28_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2)))
% 0.78/0.96 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2))))))))) of role axiom named satz8
% 0.78/0.96 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2)))))))))
% 0.78/0.96 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2)))))))) of role axiom named satz8a
% 0.78/0.96 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2))))))))
% 0.78/0.96 FOF formula (<kernel.Constant object at 0x2aea2bc255a8>, <kernel.DependentProduct object at 0x2aea2bc252d8>) of role type named typ_diffprop
% 0.78/0.96 Using role type
% 0.78/0.96 Declaring diffprop:(fofType->(fofType->(fofType->Prop)))
% 0.78/0.96 FOF formula (((eq (fofType->(fofType->(fofType->Prop)))) diffprop) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2)))) of role definition named def_diffprop
% 0.78/0.96 A new definition: (((eq (fofType->(fofType->(fofType->Prop)))) diffprop) (fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))
% 0.78/0.96 Defined: diffprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2)))
% 0.78/0.96 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2)))))))) of role axiom named satz8b
% 0.78/0.98 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))))))
% 0.78/0.98 FOF formula (<kernel.Constant object at 0x2aea2bc25128>, <kernel.DependentProduct object at 0x2aea2bc25488>) of role type named typ_d_29_ii
% 0.78/0.98 Using role type
% 0.78/0.98 Declaring d_29_ii:(fofType->(fofType->Prop))
% 0.78/0.98 FOF formula (((eq (fofType->(fofType->Prop))) d_29_ii) (fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1)))) of role definition named def_d_29_ii
% 0.78/0.98 A new definition: (((eq (fofType->(fofType->Prop))) d_29_ii) (fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1))))
% 0.78/0.98 Defined: d_29_ii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1)))
% 0.78/0.98 FOF formula (<kernel.Constant object at 0x2aea2bc25488>, <kernel.DependentProduct object at 0x2aea2bc252d8>) of role type named typ_iii
% 0.78/0.98 Using role type
% 0.78/0.98 Declaring iii:(fofType->(fofType->Prop))
% 0.78/0.98 FOF formula (((eq (fofType->(fofType->Prop))) iii) (fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0)))) of role definition named def_iii
% 0.78/0.98 A new definition: (((eq (fofType->(fofType->Prop))) iii) (fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0))))
% 0.78/0.98 Defined: iii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0)))
% 0.78/0.98 FOF formula (<kernel.Constant object at 0x2aea2bc252d8>, <kernel.DependentProduct object at 0x2aea2bc25248>) of role type named typ_d_29_prop1
% 0.78/0.98 Using role type
% 0.78/0.98 Declaring d_29_prop1:(fofType->(fofType->Prop))
% 0.78/0.98 FOF formula (((eq (fofType->(fofType->Prop))) d_29_prop1) (fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))) of role definition named def_d_29_prop1
% 0.78/0.98 A new definition: (((eq (fofType->(fofType->Prop))) d_29_prop1) (fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))
% 0.78/0.98 Defined: d_29_prop1:=(fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))
% 0.78/0.98 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2))))))))) of role axiom named satz9
% 0.78/0.98 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2)))))))))
% 0.78/0.98 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0))))))) of role axiom named satz9a
% 0.78/0.98 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 0.78/0.98 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0))))))) of role axiom named satz9b
% 0.78/0.98 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 0.78/0.98 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))))) of role axiom named satz10
% 0.78/0.98 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 0.78/0.98 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))))) of role axiom named satz10a
% 0.78/1.00 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 0.78/1.00 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))))) of role axiom named satz10b
% 0.78/1.00 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 0.78/1.00 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0)))))) of role axiom named satz11
% 0.78/1.00 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0))))))
% 0.78/1.00 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0)))))) of role axiom named satz12
% 0.78/1.00 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0))))))
% 0.78/1.00 FOF formula (<kernel.Constant object at 0x2aea2bc25128>, <kernel.DependentProduct object at 0x2aea2bc1e320>) of role type named typ_moreis
% 0.78/1.00 Using role type
% 0.78/1.00 Declaring moreis:(fofType->(fofType->Prop))
% 0.78/1.00 FOF formula (((eq (fofType->(fofType->Prop))) moreis) (fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1)))) of role definition named def_moreis
% 0.78/1.00 A new definition: (((eq (fofType->(fofType->Prop))) moreis) (fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1))))
% 0.78/1.00 Defined: moreis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1)))
% 0.78/1.00 FOF formula (<kernel.Constant object at 0x2aea2bc25128>, <kernel.DependentProduct object at 0x2aea2bc1ed40>) of role type named typ_lessis
% 0.78/1.00 Using role type
% 0.78/1.00 Declaring lessis:(fofType->(fofType->Prop))
% 0.78/1.00 FOF formula (((eq (fofType->(fofType->Prop))) lessis) (fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1)))) of role definition named def_lessis
% 0.78/1.00 A new definition: (((eq (fofType->(fofType->Prop))) lessis) (fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1))))
% 0.78/1.00 Defined: lessis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1)))
% 0.78/1.00 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0)))))) of role axiom named satz13
% 0.78/1.00 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0))))))
% 0.78/1.00 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0)))))) of role axiom named satz14
% 0.78/1.00 A new axiom: ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0))))))
% 0.78/1.00 FOF formula ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->(d_not ((iii X0) X1))))))) of role conjecture named satz10c
% 0.78/1.00 Conjecture to prove = ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->(d_not ((iii X0) X1))))))):Prop
% 0.78/1.00 We need to prove ['((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->(d_not ((iii X0) X1)))))))']
% 0.78/1.00 Parameter fofType:Type.
% 0.78/1.00 Definition is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop)).
% 0.78/1.00 Definition all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop)).
% 0.78/1.00 Parameter eps:((fofType->Prop)->fofType).
% 0.78/1.00 Parameter in:(fofType->(fofType->Prop)).
% 0.78/1.00 Definition d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop)).
% 0.78/1.00 Axiom set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1)))).
% 0.78/1.00 Axiom k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1)))).
% 0.78/1.00 Parameter emptyset:fofType.
% 0.78/1.00 Axiom k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False).
% 0.78/1.00 Parameter union:(fofType->fofType).
% 0.78/1.00 Axiom k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0)))))).
% 0.78/1.00 Parameter power:(fofType->fofType).
% 0.78/1.00 Axiom k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0))).
% 0.78/1.00 Parameter repl:(fofType->((fofType->fofType)->fofType)).
% 0.78/1.00 Axiom k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3))))))).
% 0.78/1.00 Definition d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop).
% 0.78/1.00 Definition d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop).
% 0.78/1.00 Definition d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop).
% 0.78/1.00 Definition d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop).
% 0.78/1.00 Parameter univof:(fofType->fofType).
% 0.78/1.00 Axiom k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0))).
% 0.78/1.00 Axiom k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0))).
% 0.78/1.00 Definition if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType))).
% 0.78/1.00 Axiom if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2)))).
% 0.78/1.00 Axiom if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2))).
% 0.78/1.00 Axiom if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1))).
% 0.78/1.00 Axiom if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2))).
% 0.78/1.00 Definition nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop)).
% 0.78/1.00 Axiom k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0))).
% 0.78/1.00 Axiom k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0)))).
% 0.78/1.00 Axiom k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0))).
% 0.78/1.00 Definition d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType)).
% 0.78/1.00 Definition d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType).
% 0.78/1.00 Definition binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType)).
% 0.78/1.00 Definition famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType)).
% 0.78/1.00 Definition d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType)).
% 0.78/1.01 Axiom k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1))))).
% 0.78/1.01 Axiom k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0))).
% 0.78/1.01 Axiom k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2))).
% 0.78/1.01 Definition d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType))).
% 0.78/1.01 Definition setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType)).
% 0.78/1.01 Definition d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop))).
% 0.78/1.01 Definition d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType)).
% 0.78/1.01 Definition ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType).
% 0.78/1.01 Axiom neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset))).
% 0.78/1.01 Axiom ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1))).
% 0.78/1.01 Axiom k_In_0_1:((in emptyset) (ordsucc emptyset)).
% 0.78/1.01 Definition nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop).
% 0.78/1.01 Axiom nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0)))).
% 0.78/1.01 Axiom nat_1:(nat_p (ordsucc emptyset)).
% 0.78/1.01 Axiom nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1)))))).
% 0.78/1.01 Axiom nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1)))))))).
% 0.78/1.01 Definition omega:=((d_Sep (univof emptyset)) nat_p):fofType.
% 0.78/1.01 Axiom omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0))).
% 0.78/1.01 Axiom nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega))).
% 0.78/1.01 Definition d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType).
% 0.78/1.01 Definition d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType).
% 0.78/1.01 Definition d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType).
% 0.78/1.01 Definition pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType)).
% 0.78/1.01 Definition proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType).
% 0.78/1.01 Definition _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType).
% 0.78/1.01 Axiom proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0)).
% 0.78/1.01 Axiom proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1)).
% 0.78/1.01 Definition d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType)).
% 0.78/1.01 Axiom pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1)))))).
% 0.78/1.01 Axiom k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))).
% 0.78/1.01 Axiom proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2))).
% 0.78/1.01 Axiom proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0))).
% 0.78/1.01 Axiom proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))).
% 0.78/1.01 Definition setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType)).
% 0.78/1.01 Definition ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType)).
% 0.78/1.01 Axiom beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2)))).
% 0.78/1.01 Definition pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop).
% 0.78/1.01 Definition d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType)).
% 0.78/1.01 Axiom lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1)))).
% 0.78/1.01 Axiom ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))).
% 0.78/1.01 Axiom k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3)))))).
% 0.78/1.01 Axiom xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2)))).
% 0.78/1.01 Axiom k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset))))).
% 0.78/1.01 Axiom k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2)))).
% 0.78/1.01 Definition imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop).
% 0.78/1.01 Definition wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop).
% 0.78/1.01 Axiom l_et:(forall (X0:Prop), ((wel X0)->X0)).
% 0.78/1.01 Definition obvious:=((imp False) False):Prop.
% 0.78/1.01 Definition l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop)).
% 0.78/1.01 Definition non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop))).
% 0.78/1.01 Definition l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop)).
% 0.78/1.01 Definition or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.78/1.01 Definition and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.78/1.01 Definition ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop))).
% 0.78/1.01 Definition orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop))).
% 0.78/1.01 Definition e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.01 Axiom refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1)))).
% 0.78/1.01 Axiom e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3)))))))).
% 0.78/1.01 Definition amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop)).
% 0.78/1.01 Definition one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop)).
% 0.78/1.01 Definition ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType)).
% 0.78/1.01 Axiom ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0))))).
% 0.78/1.01 Axiom oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1)))).
% 0.78/1.01 Definition injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.01 Definition image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop)))).
% 0.78/1.01 Definition tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.78/1.01 Definition soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.78/1.01 Definition inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType))).
% 0.78/1.01 Definition surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.01 Definition bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.01 Definition invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.78/1.01 Definition inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType))))).
% 0.78/1.01 Axiom e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3))))))).
% 0.78/1.01 Definition e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType))).
% 0.78/1.01 Axiom e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))).
% 0.78/1.01 Axiom e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2))))).
% 0.78/1.01 Axiom otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))).
% 0.78/1.01 Axiom otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2))))).
% 0.78/1.01 Definition out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType))).
% 0.78/1.01 Definition d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.78/1.01 Axiom e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1))))))))).
% 0.78/1.01 Definition first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType))).
% 0.78/1.01 Axiom first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0)))))).
% 0.78/1.01 Definition second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType))).
% 0.78/1.01 Axiom second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1)))))).
% 0.78/1.01 Axiom pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2)))).
% 0.78/1.01 Axiom firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2)))))).
% 0.78/1.01 Axiom secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3)))))).
% 0.78/1.01 Definition prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop))))).
% 0.78/1.01 Definition ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType)))).
% 0.78/1.01 Definition wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.78/1.01 Definition wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType)))).
% 0.78/1.01 Definition wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType))).
% 0.78/1.01 Definition changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType))))).
% 0.78/1.01 Definition r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop)).
% 0.78/1.01 Definition esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.01 Axiom setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0))))).
% 0.78/1.01 Axiom estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1)))))).
% 0.78/1.01 Axiom estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2))))).
% 0.78/1.01 Definition empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop)).
% 0.78/1.01 Definition nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop)).
% 0.78/1.01 Definition incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.02 Definition st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.02 Axiom isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2)))))))).
% 0.78/1.02 Definition nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop)))).
% 0.78/1.02 Definition unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType))).
% 0.78/1.02 Definition ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.78/1.02 Definition ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))).
% 0.78/1.02 Definition anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop))).
% 0.78/1.02 Definition ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType)).
% 0.78/1.02 Definition ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.78/1.02 Definition ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.78/1.02 Definition ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType))).
% 0.78/1.02 Definition fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))).
% 0.78/1.02 Definition d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop))))))).
% 0.78/1.02 Definition prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop)))))).
% 0.78/1.02 Definition indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType))))).
% 0.78/1.02 Definition fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop)))).
% 0.78/1.02 Definition d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType))))).
% 0.78/1.02 Definition indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType)))))).
% 0.78/1.02 Definition nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType.
% 0.78/1.02 Definition n_is:=(e_is nat):(fofType->(fofType->Prop)).
% 0.78/1.02 Definition nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop)).
% 0.78/1.02 Definition n_in:=(esti nat):(fofType->(fofType->Prop)).
% 0.78/1.02 Definition n_some:=(l_some nat):((fofType->Prop)->Prop).
% 0.78/1.02 Definition n_all:=(all nat):((fofType->Prop)->Prop).
% 0.78/1.02 Definition n_one:=(one nat):((fofType->Prop)->Prop).
% 0.78/1.02 Definition n_1:=(ordsucc emptyset):fofType.
% 0.78/1.02 Axiom n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat))).
% 0.78/1.02 Axiom suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat))))).
% 0.78/1.02 Axiom n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1))).
% 0.78/1.02 Axiom n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1)))))).
% 0.78/1.02 Definition cond1:=(n_in n_1):(fofType->Prop).
% 0.78/1.02 Definition cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop).
% 0.78/1.02 Axiom n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0))))))).
% 0.78/1.02 Definition i1_s:=(d_Sep nat):((fofType->Prop)->fofType).
% 0.78/1.02 Axiom satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1))))))).
% 0.78/1.02 Definition d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop).
% 0.78/1.02 Axiom satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0))).
% 0.78/1.02 Definition d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop).
% 0.78/1.02 Axiom satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))).
% 0.78/1.02 Axiom satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1))))))).
% 0.78/1.02 Definition d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop).
% 0.78/1.02 Definition d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop)).
% 0.78/1.02 Definition prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.02 Definition prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop).
% 0.78/1.02 Definition d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType).
% 0.78/1.02 Axiom satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2)))))))))).
% 0.78/1.02 Definition plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType).
% 0.78/1.02 Definition n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType)).
% 0.78/1.02 Axiom satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0)))).
% 0.78/1.02 Axiom satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1))))))).
% 0.78/1.02 Axiom satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0)))).
% 0.78/1.02 Axiom satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1))))))).
% 0.78/1.02 Axiom satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1)))).
% 0.78/1.02 Axiom satz4f:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1))))))).
% 0.78/1.02 Axiom satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0)))).
% 0.78/1.02 Axiom satz4h:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1)))))).
% 0.78/1.02 Definition d_25_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.02 Axiom satz5:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2))))))))).
% 0.78/1.02 Definition d_26_prop1:=(fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))):(fofType->(fofType->Prop)).
% 0.78/1.02 Axiom satz6:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0)))))).
% 0.78/1.02 Definition d_27_prop1:=(fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1))):(fofType->(fofType->Prop)).
% 0.78/1.02 Axiom satz7:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1)))))).
% 0.78/1.02 Definition d_28_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.02 Axiom satz8:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2))))))))).
% 0.78/1.02 Axiom satz8a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2)))))))).
% 0.78/1.02 Definition diffprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))):(fofType->(fofType->(fofType->Prop))).
% 0.78/1.02 Axiom satz8b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2)))))))).
% 0.78/1.02 Definition d_29_ii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1))):(fofType->(fofType->Prop)).
% 0.78/1.02 Definition iii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0))):(fofType->(fofType->Prop)).
% 0.78/1.02 Definition d_29_prop1:=(fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))):(fofType->(fofType->Prop)).
% 0.78/1.02 Axiom satz9:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2))))))))).
% 0.78/1.02 Axiom satz9a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0))))))).
% 0.78/1.02 Axiom satz9b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0))))))).
% 0.78/1.02 Axiom satz10:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))))).
% 46.20/46.38 Axiom satz10a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))))).
% 46.20/46.38 Axiom satz10b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1)))))).
% 46.20/46.38 Axiom satz11:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0)))))).
% 46.20/46.38 Axiom satz12:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0)))))).
% 46.20/46.38 Definition moreis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop)).
% 46.20/46.38 Definition lessis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop)).
% 46.20/46.38 Axiom satz13:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0)))))).
% 46.20/46.38 Axiom satz14:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0)))))).
% 46.20/46.38 Trying to prove ((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->(d_not ((iii X0) X1)))))))
% 46.20/46.38 --- does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> (forall x:((moreis X0) X1), (d_not ((iii X0) X1))))))))
% 46.20/46.38 ---context
% 46.20/46.38 False:Prop
% 46.20/46.38 False_rect:(forall (P:Type), (False->P))
% 46.20/46.38 I:True
% 46.20/46.38 NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 46.20/46.38 True:Prop
% 46.20/46.38 _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.20/46.38 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.38 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 46.20/46.38 amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.38 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.38 and:(Prop->(Prop->Prop))
% 46.20/46.38 and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 46.20/46.38 and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 46.20/46.38 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 46.20/46.38 ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 46.20/46.38 ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 46.20/46.38 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 46.20/46.38 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 46.20/46.38 changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.38 choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.38 choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 46.20/46.38 classic:(forall (P:Prop), ((or P) (not P)))
% 46.20/46.38 classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 46.20/46.38 cond1:=(n_in n_1):(fofType->Prop)
% 46.20/46.38 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 46.20/46.38 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 46.20/46.38 d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 46.20/46.38 d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.38 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 46.20/46.38 d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 46.20/46.38 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 46.20/46.38 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 46.20/46.38 d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 46.20/46.38 d_25_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 d_26_prop1:=(fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))):(fofType->(fofType->Prop))
% 46.20/46.38 d_27_prop1:=(fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.38 d_28_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 d_29_ii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.38 d_29_prop1:=(fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.38 d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 46.20/46.38 d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 46.20/46.38 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 46.20/46.38 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 46.20/46.38 d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.38 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 46.20/46.38 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 46.20/46.38 d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 46.20/46.38 d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 46.20/46.38 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.38 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 46.20/46.38 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 46.20/46.38 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 46.20/46.38 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 46.20/46.38 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 46.20/46.38 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 46.20/46.38 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.20/46.38 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 46.20/46.38 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.38 dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.38 diffprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 46.20/46.38 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.20/46.38 e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.20/46.38 e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 46.20/46.38 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 46.20/46.38 e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 46.20/46.38 ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.38 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.38 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.38 ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.38 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 46.20/46.38 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.38 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.38 empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 46.20/46.38 emptyset:fofType
% 46.20/46.38 eps:((fofType->Prop)->fofType)
% 46.20/46.38 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 46.20/46.38 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 46.20/46.38 eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 46.20/46.38 eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 46.20/46.38 eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 46.20/46.38 eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 46.20/46.38 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 46.20/46.38 estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 46.20/46.38 eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 46.20/46.38 eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 46.20/46.38 ex:(forall (A:Type), ((A->Prop)->Prop))
% 46.20/46.38 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 46.20/46.38 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 46.20/46.38 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.38 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.38 first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.20/46.38 firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 46.20/46.38 fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.38 fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.38 fofType:Type
% 46.20/46.38 functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 46.20/46.38 functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 46.20/46.38 functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 46.20/46.38 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 46.20/46.38 if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 46.20/46.38 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 46.20/46.38 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 46.20/46.38 if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 46.20/46.38 if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 46.20/46.38 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 46.20/46.38 iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 46.20/46.38 iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 46.20/46.38 iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 46.20/46.38 iii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0))):(fofType->(fofType->Prop))
% 46.20/46.38 image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.20/46.38 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 46.20/46.38 in:(fofType->(fofType->Prop))
% 46.20/46.38 incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 46.20/46.38 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 46.20/46.38 indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 46.20/46.38 indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.38 inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.38 injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.38 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.38 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 46.20/46.38 isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 46.20/46.38 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.38 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 46.20/46.38 k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 46.20/46.38 k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 46.20/46.38 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 46.20/46.38 k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 46.20/46.38 k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 46.20/46.38 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 46.20/46.38 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 46.20/46.38 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 46.20/46.38 k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 46.20/46.38 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 46.20/46.38 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 46.20/46.38 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 46.20/46.38 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 46.20/46.38 k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 46.20/46.38 k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 46.20/46.38 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 46.20/46.38 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 46.20/46.38 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 46.20/46.38 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 46.20/46.38 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 46.20/46.38 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 46.20/46.38 l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.38 lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 46.20/46.38 lessis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.38 moreis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.38 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 46.20/46.38 n_1:=(ordsucc emptyset):fofType
% 46.20/46.38 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 46.20/46.38 n_all:=(all nat):((fofType->Prop)->Prop)
% 46.20/46.38 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 46.20/46.38 n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 46.20/46.38 n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 46.20/46.38 n_in:=(esti nat):(fofType->(fofType->Prop))
% 46.20/46.38 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 46.20/46.38 n_one:=(one nat):((fofType->Prop)->Prop)
% 46.20/46.38 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 46.20/46.38 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 46.20/46.38 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 46.20/46.38 nat_1:(nat_p (ordsucc emptyset))
% 46.20/46.38 nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 46.20/46.38 nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 46.20/46.38 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 46.20/46.38 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 46.20/46.38 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 46.20/46.38 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 46.20/46.38 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.38 nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.20/46.38 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 46.20/46.38 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 46.20/46.38 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 46.20/46.38 obvious:=((imp False) False):Prop
% 46.20/46.38 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 46.20/46.38 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 46.20/46.38 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.38 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 46.20/46.38 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.38 or:(Prop->(Prop->Prop))
% 46.20/46.38 or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 46.20/46.38 or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 46.20/46.38 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 46.20/46.38 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 46.20/46.38 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 46.20/46.38 or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 46.20/46.38 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 46.20/46.38 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 46.20/46.38 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.38 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.20/46.38 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 46.20/46.38 otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 46.20/46.38 out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.20/46.38 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 46.20/46.38 pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 46.20/46.38 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 46.20/46.38 pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 46.20/46.38 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 46.20/46.38 power:(fofType->fofType)
% 46.20/46.38 proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.20/46.38 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 46.20/46.38 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 46.20/46.38 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 46.20/46.38 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 46.20/46.38 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 46.20/46.38 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 46.20/46.38 proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 46.20/46.38 prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 46.20/46.38 prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 46.20/46.38 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.38 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 46.20/46.38 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 46.20/46.38 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 46.20/46.38 relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 46.20/46.38 repl:(fofType->((fofType->fofType)->fofType))
% 46.20/46.38 satz10:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.38 satz10a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.38 satz10b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.38 satz11:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0))))))
% 46.20/46.38 satz12:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0))))))
% 46.20/46.38 satz13:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0))))))
% 46.20/46.38 satz14:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0))))))
% 46.20/46.38 satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 46.20/46.38 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 46.20/46.38 satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.20/46.38 satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.20/46.38 satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 46.20/46.38 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 46.20/46.38 satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 46.20/46.38 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 46.20/46.38 satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 46.20/46.38 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 46.20/46.38 satz4f:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 46.20/46.38 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 46.20/46.38 satz4h:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))
% 46.20/46.38 satz5:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))))))))
% 46.20/46.38 satz6:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))))))
% 46.20/46.38 satz7:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1))))))
% 46.20/46.38 satz8:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2)))))))))
% 46.20/46.38 satz8a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2))))))))
% 46.20/46.38 satz8b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))))))
% 46.20/46.38 satz9:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2)))))))))
% 46.20/46.38 satz9a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.20/46.38 satz9b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.20/46.38 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.38 second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 46.20/46.38 secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 46.20/46.38 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 46.20/46.38 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 46.20/46.38 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 46.20/46.40 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 46.20/46.40 soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.40 st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 46.20/46.40 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 46.20/46.40 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.40 union:(fofType->fofType)
% 46.20/46.40 unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 46.20/46.40 unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.40 univof:(fofType->fofType)
% 46.20/46.40 unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.40 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 46.20/46.40 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.40 wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.40 wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.40 xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))
% 46.20/46.40 ---termcontext
% 46.20/46.40 [[[False:Prop
% 46.20/46.40 False_rect:(forall (P:Type), (False->P))
% 46.20/46.40 I:True
% 46.20/46.40 NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 46.20/46.40 True:Prop
% 46.20/46.40 _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.20/46.40 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.40 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 46.20/46.40 amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.40 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.40 and:(Prop->(Prop->Prop))
% 46.20/46.40 and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 46.20/46.40 and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 46.20/46.40 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 46.20/46.40 ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 46.20/46.40 ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 46.20/46.40 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 46.20/46.40 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 46.20/46.40 changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.40 choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.40 choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 46.20/46.40 classic:(forall (P:Prop), ((or P) (not P)))
% 46.20/46.40 classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 46.20/46.40 cond1:=(n_in n_1):(fofType->Prop)
% 46.20/46.40 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 46.20/46.40 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 46.20/46.40 d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 46.20/46.40 d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.40 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 46.20/46.40 d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 46.20/46.40 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 46.20/46.40 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 46.20/46.40 d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 46.20/46.40 d_25_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 d_26_prop1:=(fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))):(fofType->(fofType->Prop))
% 46.20/46.40 d_27_prop1:=(fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.40 d_28_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 d_29_ii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.40 d_29_prop1:=(fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.40 d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 46.20/46.40 d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 46.20/46.40 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 46.20/46.40 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 46.20/46.40 d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.40 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 46.20/46.40 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 46.20/46.40 d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 46.20/46.40 d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 46.20/46.40 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.40 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 46.20/46.40 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 46.20/46.40 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 46.20/46.40 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 46.20/46.40 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 46.20/46.40 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 46.20/46.40 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.20/46.40 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 46.20/46.40 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.40 dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.40 diffprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 46.20/46.40 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.20/46.40 e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.20/46.40 e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 46.20/46.40 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 46.20/46.40 e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 46.20/46.40 ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.40 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.40 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.40 ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.40 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 46.20/46.40 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.40 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.40 empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 46.20/46.40 emptyset:fofType
% 46.20/46.40 eps:((fofType->Prop)->fofType)
% 46.20/46.40 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 46.20/46.40 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 46.20/46.40 eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 46.20/46.40 eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 46.20/46.40 eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 46.20/46.40 eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 46.20/46.40 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 46.20/46.40 estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 46.20/46.40 eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 46.20/46.40 eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 46.20/46.40 ex:(forall (A:Type), ((A->Prop)->Prop))
% 46.20/46.40 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 46.20/46.40 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 46.20/46.40 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.40 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.40 first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.20/46.40 firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 46.20/46.40 fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.40 fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.40 fofType:Type
% 46.20/46.40 functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 46.20/46.40 functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 46.20/46.40 functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 46.20/46.40 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 46.20/46.40 if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 46.20/46.40 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 46.20/46.40 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 46.20/46.40 if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 46.20/46.40 if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 46.20/46.40 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 46.20/46.40 iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 46.20/46.40 iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 46.20/46.40 iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 46.20/46.40 iii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0))):(fofType->(fofType->Prop))
% 46.20/46.40 image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.20/46.40 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 46.20/46.40 in:(fofType->(fofType->Prop))
% 46.20/46.40 incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 46.20/46.40 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 46.20/46.40 indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 46.20/46.40 indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.40 inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.40 injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.40 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.40 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 46.20/46.40 isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 46.20/46.40 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.40 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 46.20/46.40 k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 46.20/46.40 k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 46.20/46.40 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 46.20/46.40 k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 46.20/46.40 k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 46.20/46.40 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 46.20/46.40 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 46.20/46.40 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 46.20/46.40 k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 46.20/46.40 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 46.20/46.40 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 46.20/46.40 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 46.20/46.40 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 46.20/46.40 k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 46.20/46.40 k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 46.20/46.40 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 46.20/46.40 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 46.20/46.40 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 46.20/46.40 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 46.20/46.40 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 46.20/46.40 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 46.20/46.40 l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.40 lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 46.20/46.40 lessis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.40 moreis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.40 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 46.20/46.40 n_1:=(ordsucc emptyset):fofType
% 46.20/46.40 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 46.20/46.40 n_all:=(all nat):((fofType->Prop)->Prop)
% 46.20/46.40 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 46.20/46.40 n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 46.20/46.40 n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 46.20/46.40 n_in:=(esti nat):(fofType->(fofType->Prop))
% 46.20/46.40 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 46.20/46.40 n_one:=(one nat):((fofType->Prop)->Prop)
% 46.20/46.40 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 46.20/46.40 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 46.20/46.40 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 46.20/46.40 nat_1:(nat_p (ordsucc emptyset))
% 46.20/46.40 nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 46.20/46.40 nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 46.20/46.40 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 46.20/46.40 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 46.20/46.40 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 46.20/46.40 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 46.20/46.40 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.40 nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.20/46.40 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 46.20/46.40 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 46.20/46.40 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 46.20/46.40 obvious:=((imp False) False):Prop
% 46.20/46.40 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 46.20/46.40 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 46.20/46.40 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.40 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 46.20/46.40 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.40 or:(Prop->(Prop->Prop))
% 46.20/46.40 or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 46.20/46.40 or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 46.20/46.40 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 46.20/46.40 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 46.20/46.40 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 46.20/46.40 or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 46.20/46.40 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 46.20/46.40 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 46.20/46.40 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.40 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.20/46.40 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 46.20/46.40 otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 46.20/46.40 out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.20/46.40 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 46.20/46.40 pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 46.20/46.40 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 46.20/46.40 pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 46.20/46.40 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 46.20/46.40 power:(fofType->fofType)
% 46.20/46.40 proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.20/46.40 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 46.20/46.40 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 46.20/46.40 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 46.20/46.40 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 46.20/46.40 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 46.20/46.40 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 46.20/46.40 proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 46.20/46.40 prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 46.20/46.40 prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 46.20/46.40 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.40 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 46.20/46.40 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 46.20/46.40 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 46.20/46.40 relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 46.20/46.40 repl:(fofType->((fofType->fofType)->fofType))
% 46.20/46.40 satz10:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.40 satz10a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.40 satz10b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.40 satz11:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0))))))
% 46.20/46.40 satz12:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0))))))
% 46.20/46.40 satz13:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0))))))
% 46.20/46.40 satz14:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0))))))
% 46.20/46.40 satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 46.20/46.40 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 46.20/46.40 satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.20/46.40 satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.20/46.40 satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 46.20/46.40 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 46.20/46.40 satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 46.20/46.40 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 46.20/46.40 satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 46.20/46.40 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 46.20/46.40 satz4f:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 46.20/46.40 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 46.20/46.40 satz4h:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))
% 46.20/46.40 satz5:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))))))))
% 46.20/46.40 satz6:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))))))
% 46.20/46.40 satz7:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1))))))
% 46.20/46.40 satz8:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2)))))))))
% 46.20/46.40 satz8a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2))))))))
% 46.20/46.40 satz8b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))))))
% 46.20/46.40 satz9:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2)))))))))
% 46.20/46.40 satz9a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.20/46.40 satz9b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.20/46.40 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.40 second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 46.20/46.42 secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 46.20/46.42 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 46.20/46.42 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 46.20/46.42 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 46.20/46.42 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 46.20/46.42 soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.42 st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 46.20/46.42 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 46.20/46.42 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.42 union:(fofType->fofType)
% 46.20/46.42 unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 46.20/46.42 unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.42 univof:(fofType->fofType)
% 46.20/46.42 unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.42 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 46.20/46.42 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.42 wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.42 wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.42 xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]X0:fofType
% 46.20/46.42 X1:(fofType->Prop)
% 46.20/46.42 X2:fofType]x:((is_of X2) (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1))))]x0:fofType
% 46.20/46.42 ---subcontext
% 46.20/46.42 [False:Prop
% 46.20/46.42 False_rect:(forall (P:Type), (False->P))
% 46.20/46.42 I:True
% 46.20/46.42 NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 46.20/46.42 True:Prop
% 46.20/46.42 _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.20/46.42 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.42 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 46.20/46.42 amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.42 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.42 and:(Prop->(Prop->Prop))
% 46.20/46.42 and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 46.20/46.42 and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 46.20/46.42 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 46.20/46.42 ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 46.20/46.42 ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 46.20/46.42 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 46.20/46.42 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 46.20/46.42 changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.42 choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.42 choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 46.20/46.42 classic:(forall (P:Prop), ((or P) (not P)))
% 46.20/46.42 classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 46.20/46.42 cond1:=(n_in n_1):(fofType->Prop)
% 46.20/46.42 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 46.20/46.42 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 46.20/46.42 d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 46.20/46.42 d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.42 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 46.20/46.42 d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 46.20/46.42 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 46.20/46.42 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 46.20/46.42 d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 46.20/46.42 d_25_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 d_26_prop1:=(fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))):(fofType->(fofType->Prop))
% 46.20/46.42 d_27_prop1:=(fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.42 d_28_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 d_29_ii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.42 d_29_prop1:=(fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.42 d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 46.20/46.42 d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 46.20/46.42 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 46.20/46.42 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 46.20/46.42 d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.42 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 46.20/46.42 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 46.20/46.42 d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 46.20/46.42 d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 46.20/46.42 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.42 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 46.20/46.42 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 46.20/46.42 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 46.20/46.42 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 46.20/46.42 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 46.20/46.42 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 46.20/46.42 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.20/46.42 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 46.20/46.42 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.42 dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 46.20/46.42 diffprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 46.20/46.42 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.20/46.42 e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.20/46.42 e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 46.20/46.42 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 46.20/46.42 e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 46.20/46.42 ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.42 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.42 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.42 ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.42 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 46.20/46.42 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.42 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.20/46.42 empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 46.20/46.42 emptyset:fofType
% 46.20/46.42 eps:((fofType->Prop)->fofType)
% 46.20/46.42 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 46.20/46.42 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 46.20/46.42 eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 46.20/46.42 eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 46.20/46.42 eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 46.20/46.42 eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 46.20/46.42 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 46.20/46.42 estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 46.20/46.42 eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 46.20/46.42 eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 46.20/46.42 ex:(forall (A:Type), ((A->Prop)->Prop))
% 46.20/46.42 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 46.20/46.42 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 46.20/46.42 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 46.20/46.42 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.42 first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.20/46.42 firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 46.20/46.42 fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.42 fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.20/46.42 fofType:Type
% 46.20/46.42 functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 46.20/46.42 functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 46.20/46.42 functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 46.20/46.42 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 46.20/46.42 if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 46.20/46.42 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 46.20/46.42 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 46.20/46.42 if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 46.20/46.42 if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 46.20/46.42 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 46.20/46.42 iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 46.20/46.42 iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 46.20/46.42 iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 46.20/46.42 iii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0))):(fofType->(fofType->Prop))
% 46.20/46.42 image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.20/46.42 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 46.20/46.42 in:(fofType->(fofType->Prop))
% 46.20/46.42 incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 46.20/46.42 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 46.20/46.42 indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 46.20/46.42 indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.42 inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.20/46.42 injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.42 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.20/46.42 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 46.20/46.42 isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 46.20/46.42 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 46.20/46.42 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 46.20/46.42 k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 46.20/46.42 k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 46.20/46.42 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 46.20/46.42 k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 46.20/46.42 k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 46.20/46.42 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 46.20/46.42 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 46.20/46.42 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 46.20/46.42 k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 46.20/46.42 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 46.20/46.42 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 46.20/46.42 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 46.20/46.42 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 46.20/46.42 k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 46.20/46.42 k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 46.20/46.42 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 46.20/46.42 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 46.20/46.42 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 46.20/46.42 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 46.20/46.42 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 46.20/46.42 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 46.20/46.42 l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.42 lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 46.20/46.42 lessis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.42 moreis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.42 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 46.20/46.42 n_1:=(ordsucc emptyset):fofType
% 46.20/46.42 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 46.20/46.42 n_all:=(all nat):((fofType->Prop)->Prop)
% 46.20/46.42 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 46.20/46.42 n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 46.20/46.42 n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 46.20/46.42 n_in:=(esti nat):(fofType->(fofType->Prop))
% 46.20/46.42 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 46.20/46.42 n_one:=(one nat):((fofType->Prop)->Prop)
% 46.20/46.42 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 46.20/46.42 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 46.20/46.42 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 46.20/46.42 nat_1:(nat_p (ordsucc emptyset))
% 46.20/46.42 nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 46.20/46.42 nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 46.20/46.42 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 46.20/46.42 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 46.20/46.42 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 46.20/46.42 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 46.20/46.42 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.20/46.42 nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.20/46.42 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 46.20/46.42 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 46.20/46.42 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 46.20/46.42 obvious:=((imp False) False):Prop
% 46.20/46.42 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 46.20/46.42 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 46.20/46.42 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 46.20/46.42 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 46.20/46.42 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.42 or:(Prop->(Prop->Prop))
% 46.20/46.42 or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 46.20/46.42 or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 46.20/46.42 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 46.20/46.42 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 46.20/46.42 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 46.20/46.42 or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 46.20/46.42 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 46.20/46.42 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 46.20/46.42 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.20/46.42 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.20/46.42 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 46.20/46.42 otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 46.20/46.42 out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.20/46.42 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 46.20/46.42 pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 46.20/46.42 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 46.20/46.42 pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 46.20/46.42 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 46.20/46.42 power:(fofType->fofType)
% 46.20/46.42 proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.20/46.42 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 46.20/46.42 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 46.20/46.42 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 46.20/46.42 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 46.20/46.42 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 46.20/46.42 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 46.20/46.42 proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 46.20/46.42 prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 46.20/46.42 prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 46.20/46.42 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.20/46.42 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 46.20/46.42 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 46.20/46.42 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 46.20/46.42 relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 46.20/46.42 repl:(fofType->((fofType->fofType)->fofType))
% 46.20/46.42 satz10:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.42 satz10a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.42 satz10b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.20/46.42 satz11:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0))))))
% 46.20/46.42 satz12:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0))))))
% 46.20/46.42 satz13:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0))))))
% 46.20/46.42 satz14:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0))))))
% 46.20/46.42 satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 46.20/46.42 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 46.20/46.42 satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.20/46.42 satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.20/46.42 satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 46.20/46.42 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 46.20/46.42 satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 46.20/46.42 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 46.20/46.42 satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 46.20/46.42 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 46.20/46.42 satz4f:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 46.20/46.42 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 46.20/46.42 satz4h:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))
% 46.20/46.42 satz5:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))))))))
% 46.20/46.42 satz6:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))))))
% 46.20/46.42 satz7:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1))))))
% 46.20/46.42 satz8:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2)))))))))
% 46.20/46.42 satz8a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2))))))))
% 46.20/46.42 satz8b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))))))
% 46.20/46.42 satz9:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2)))))))))
% 46.24/46.44 satz9a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.24/46.44 satz9b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.24/46.44 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 46.24/46.44 secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 46.24/46.44 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 46.24/46.44 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 46.24/46.44 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 46.24/46.44 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 46.24/46.44 soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 46.24/46.44 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 46.24/46.44 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 union:(fofType->fofType)
% 46.24/46.44 unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 46.24/46.44 unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.24/46.44 univof:(fofType->fofType)
% 46.24/46.44 unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 46.24/46.44 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]
% 46.24/46.44 ---termsubcontext
% 46.24/46.44 [[[[False:Prop
% 46.24/46.44 False_rect:(forall (P:Type), (False->P))
% 46.24/46.44 I:True
% 46.24/46.44 NNPP:=(fun (P:Prop) (H:(not (not P)))=> ((fun (C:((or P) (not P)))=> ((((((or_ind P) (not P)) P) (fun (H0:P)=> H0)) (fun (N:(not P))=> ((False_rect P) (H N)))) C)) (classic P))):(forall (P:Prop), ((not (not P))->P))
% 46.24/46.44 True:Prop
% 46.24/46.44 _TPTP_proj1:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj1 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.24/46.44 all:=(fun (X0:fofType)=> (all_of (fun (X1:fofType)=> ((in X1) X0)))):(fofType->((fofType->Prop)->Prop))
% 46.24/46.44 all_of:=(fun (X0:(fofType->Prop)) (X1:(fofType->Prop))=> (forall (X2:fofType), (((is_of X2) X0)->(X1 X2)))):((fofType->Prop)->((fofType->Prop)->Prop))
% 46.24/46.44 amone:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((X1 X3)->(((e_is X0) X2) X3)))))))):(fofType->((fofType->Prop)->Prop))
% 46.24/46.44 and3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and X0) ((d_and X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.24/46.44 and:(Prop->(Prop->Prop))
% 46.24/46.44 and_comm_i:=(fun (A:Prop) (B:Prop) (H:((and A) B))=> ((((conj B) A) (((proj2 A) B) H)) (((proj1 A) B) H))):(forall (A:Prop) (B:Prop), (((and A) B)->((and B) A)))
% 46.24/46.44 and_rect:=(fun (A:Prop) (B:Prop) (P:Type) (X:(A->(B->P))) (H:((and A) B))=> ((X (((proj1 A) B) H)) (((proj2 A) B) H))):(forall (A:Prop) (B:Prop) (P:Type), ((A->(B->P))->(((and A) B)->P)))
% 46.24/46.44 anec:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((l_some X0) (((ecp X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->Prop)))
% 46.24/46.44 ap:=(fun (X0:fofType) (X1:fofType)=> (((d_ReplSep X0) (fun (X2:fofType)=> ((ex fofType) (fun (X3:fofType)=> (((eq fofType) X2) ((pair X1) X3)))))) _TPTP_proj1)):(fofType->(fofType->fofType))
% 46.24/46.44 ap_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType) (X3:fofType), (((in X2) ((d_Pi X0) X1))->(((in X3) X0)->((in ((ap X2) X3)) (X1 X3)))))
% 46.24/46.44 beta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(((eq fofType) ((ap ((d_Sigma X0) X1)) X2)) (X1 X2))))
% 46.24/46.44 bijective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_and (((injective X0) X1) X2)) (((surjective X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 binunion:=(fun (X0:fofType) (X1:fofType)=> (union ((d_UPair X0) X1))):(fofType->(fofType->fofType))
% 46.24/46.44 changef:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X2) ((ap (((wissel X0) X3) X4)) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.24/46.44 choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) (fun (y:B)=> ((R x) y)))))=> (((fun (P:Prop) (x0:(forall (x0:(A->(B->Prop))), (((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))->P)))=> (((((ex_ind (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x0:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x0) y)))))))) P) x0) ((((relational_choice A) B) R) x))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x0:(A->(B->Prop))) (x1:((and ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))))=> (((fun (P:Type) (x2:(((((subrelation A) B) x0) R)->((forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))->P)))=> (((((and_rect ((((subrelation A) B) x0) R)) (forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y)))))) P) x2) x1)) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x2:((((subrelation A) B) x0) R)) (x3:(forall (x00:A), ((ex B) ((unique B) (fun (y:B)=> ((x0 x00) y))))))=> (((fun (P:Prop) (x4:(forall (x1:(A->B)), ((forall (x10:A), ((x0 x10) (x1 x10)))->P)))=> (((((ex_ind (A->B)) (fun (f:(A->B))=> (forall (x1:A), ((x0 x1) (f x1))))) P) x4) ((((unique_choice A) B) x0) x3))) ((ex (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0)))))) (fun (x4:(A->B)) (x5:(forall (x10:A), ((x0 x10) (x4 x10))))=> ((((ex_intro (A->B)) (fun (f:(A->B))=> (forall (x0:A), ((R x0) (f x0))))) x4) (fun (x00:A)=> (((x2 x00) (x4 x00)) (x5 x00))))))))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.24/46.44 choice_operator:=(fun (A:Type) (a:A)=> ((((classical_choice (A->Prop)) A) (fun (x3:(A->Prop))=> x3)) a)):(forall (A:Type), (A->((ex ((A->Prop)->A)) (fun (co:((A->Prop)->A))=> (forall (P:(A->Prop)), (((ex A) (fun (x:A)=> (P x)))->(P (co P))))))))
% 46.24/46.44 classic:(forall (P:Prop), ((or P) (not P)))
% 46.24/46.44 classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% 46.24/46.44 cond1:=(n_in n_1):(fofType->Prop)
% 46.24/46.44 cond2:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((imp ((n_in X1) X0)) ((n_in (ordsucc X1)) X0))))):(fofType->Prop)
% 46.24/46.44 conj:(forall (A:Prop) (B:Prop), (A->(B->((and A) B))))
% 46.24/46.44 d_10_prop1:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType) (X6:fofType)=> ((d_and (((esti X0) X6) (((ecect X0) X1) X4))) (((e_is X2) ((ap X3) X6)) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->(fofType->Prop)))))))
% 46.24/46.44 d_11_i:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((indeq X0) X1) ((d_Pi X0) (fun (X3:fofType)=> X2)))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.24/46.44 d_22_prop1:=(fun (X0:fofType)=> ((nis (ordsucc X0)) X0)):(fofType->Prop)
% 46.24/46.44 d_23_prop1:=(fun (X0:fofType)=> ((l_or ((n_is X0) n_1)) (n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))):(fofType->Prop)
% 46.24/46.44 d_24_g:=(fun (X0:fofType)=> ((d_Sigma nat) (fun (X1:fofType)=> (ordsucc ((ap X0) X1))))):(fofType->fofType)
% 46.24/46.44 d_24_prop1:=(fun (X0:fofType)=> (n_all (fun (X1:fofType)=> ((n_is ((ap X0) (ordsucc X1))) (ordsucc ((ap X0) X1)))))):(fofType->Prop)
% 46.24/46.44 d_24_prop2:=(fun (X0:fofType) (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (d_24_prop1 X1))):(fofType->(fofType->Prop))
% 46.24/46.44 d_25_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 d_26_prop1:=(fun (X0:fofType) (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))):(fofType->(fofType->Prop))
% 46.24/46.44 d_27_prop1:=(fun (X0:fofType) (X1:fofType)=> ((nis X1) ((n_pl X0) X1))):(fofType->(fofType->Prop))
% 46.24/46.44 d_28_prop1:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((nis ((n_pl X0) X1)) ((n_pl X0) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 d_29_ii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X0) X1))):(fofType->(fofType->Prop))
% 46.24/46.44 d_29_prop1:=(fun (X0:fofType) (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))):(fofType->(fofType->Prop))
% 46.24/46.44 d_In_rec:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType)=> (eps ((d_In_rec_G X0) X1))):((fofType->((fofType->fofType)->fofType))->(fofType->fofType))
% 46.24/46.44 d_In_rec_G:=(fun (X0:(fofType->((fofType->fofType)->fofType))) (X1:fofType) (X2:fofType)=> (forall (X3:(fofType->(fofType->Prop))), ((forall (X4:fofType) (X5:(fofType->fofType)), ((forall (X6:fofType), (((in X6) X4)->((X3 X6) (X5 X6))))->((X3 X4) ((X0 X4) X5))))->((X3 X1) X2)))):((fofType->((fofType->fofType)->fofType))->(fofType->(fofType->Prop)))
% 46.24/46.44 d_Inj0:=(fun (X0:fofType)=> ((repl X0) d_Inj1)):(fofType->fofType)
% 46.24/46.44 d_Inj1:=(d_In_rec (fun (X0:fofType) (X1:(fofType->fofType))=> ((binunion (d_Sing emptyset)) ((repl X0) X1)))):(fofType->fofType)
% 46.24/46.44 d_Pi:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((d_Sep (power ((d_Sigma X0) (fun (X2:fofType)=> (union (X1 X2)))))) (fun (X2:fofType)=> (forall (X3:fofType), (((in X3) X0)->((in ((ap X2) X3)) (X1 X3))))))):(fofType->((fofType->fofType)->fofType))
% 46.24/46.44 d_Power_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (power X1)) X0)))):(fofType->Prop)
% 46.24/46.44 d_ReplSep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (repl ((d_Sep X0) X1))):(fofType->((fofType->Prop)->((fofType->fofType)->fofType)))
% 46.24/46.44 d_Repl_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->(forall (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X1)->((in (X2 X3)) X0)))->((in ((repl X1) X2)) X0)))))):(fofType->Prop)
% 46.24/46.44 d_Sep:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((if ((ex fofType) (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))) ((repl X0) (fun (X2:fofType)=> (((if (X1 X2)) X2) (eps (fun (X3:fofType)=> ((and ((in X3) X0)) (X1 X3)))))))) emptyset)):(fofType->((fofType->Prop)->fofType))
% 46.24/46.44 d_Sigma:=(fun (X0:fofType) (X1:(fofType->fofType))=> ((famunion X0) (fun (X2:fofType)=> ((repl (X1 X2)) (pair X2))))):(fofType->((fofType->fofType)->fofType))
% 46.24/46.44 d_Sing:=(fun (X0:fofType)=> ((d_UPair X0) X0)):(fofType->fofType)
% 46.24/46.44 d_Subq:=(fun (X0:fofType) (X1:fofType)=> (forall (X2:fofType), (((in X2) X0)->((in X2) X1)))):(fofType->(fofType->Prop))
% 46.24/46.44 d_UPair:=(fun (X0:fofType) (X1:fofType)=> ((repl (power (power emptyset))) (fun (X2:fofType)=> (((if ((in emptyset) X2)) X0) X1)))):(fofType->(fofType->fofType))
% 46.24/46.44 d_Union_closed:=(fun (X0:fofType)=> (forall (X1:fofType), (((in X1) X0)->((in (union X1)) X0)))):(fofType->Prop)
% 46.24/46.44 d_Unj:=(d_In_rec (fun (X0:fofType)=> (repl ((setminus X0) (d_Sing emptyset))))):(fofType->fofType)
% 46.24/46.44 d_ZF_closed:=(fun (X0:fofType)=> ((and ((and (d_Union_closed X0)) (d_Power_closed X0))) (d_Repl_closed X0))):(fofType->Prop)
% 46.24/46.44 d_and:=(fun (X0:Prop) (X1:Prop)=> (d_not ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.24/46.44 d_not:=(fun (X0:Prop)=> ((imp X0) False)):(Prop->Prop)
% 46.24/46.44 d_pair:=(fun (X0:fofType) (X1:fofType)=> pair):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 dependent_unique_choice:(forall (A:Type) (B:(A->Type)) (R:(forall (x:A), ((B x)->Prop))), ((forall (x:A), ((ex (B x)) ((unique (B x)) (fun (y:(B x))=> ((R x) y)))))->((ex (forall (x:A), (B x))) (fun (f:(forall (x:A), (B x)))=> (forall (x:A), ((R x) (f x)))))))
% 46.24/46.44 diffprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 e_fisi:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Pi X0) (fun (X3:fofType)=> X1))))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) ((d_Pi X0) (fun (X4:fofType)=> X1))))) (fun (X3:fofType)=> (((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> (((e_is X1) ((ap X2) X4)) ((ap X3) X4))))->(((e_is ((d_Pi X0) (fun (X4:fofType)=> X1))) X2) X3)))))))
% 46.24/46.44 e_in:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> X2):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.24/46.44 e_in_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> ((is_of (((e_in X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.24/46.44 e_inp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1)))) (fun (X2:fofType)=> (X1 (((e_in X0) X1) X2)))))
% 46.24/46.44 e_is:=(fun (X0:fofType) (X:fofType) (Y:fofType)=> (((eq fofType) X) Y)):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 e_isp:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X0))) (fun (X3:fofType)=> ((X1 X2)->((((e_is X0) X2) X3)->(X1 X3))))))))
% 46.24/46.44 e_pair_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> ((is_of ((((d_pair X0) X1) X2) X3)) (fun (X4:fofType)=> ((in X4) ((setprod X0) X1)))))))))
% 46.24/46.44 ec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> (((and3 ((l_ec X0) X1)) ((l_ec X1) X2)) ((l_ec X2) X0))):(Prop->(Prop->(Prop->Prop)))
% 46.24/46.44 ecect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((e_in (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.24/46.44 ecelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> ((d_Sep X0) (X1 X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.24/46.44 ecp:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> (((e_is (power X0)) X2) (((ecelt X0) X1) X3))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.24/46.44 ect:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((d_Sep (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->fofType))
% 46.24/46.44 ectelt:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType)=> (((ectset X0) X1) (((ecelt X0) X1) X2))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.24/46.44 ectset:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop)))=> ((out (power X0)) ((anec X0) X1))):(fofType->((fofType->(fofType->Prop))->(fofType->fofType)))
% 46.24/46.44 empty:=(fun (X0:fofType) (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) (fun (X2:fofType)=> (((esti X0) X2) X1))))):(fofType->(fofType->Prop))
% 46.24/46.44 emptyset:fofType
% 46.24/46.44 eps:((fofType->Prop)->fofType)
% 46.24/46.44 eq:=(fun (T:Type) (a:T) (b:T)=> (forall (P:(T->Prop)), ((P a)->(P b)))):(forall (T:Type), (T->(T->Prop)))
% 46.24/46.44 eq_ref:=(fun (T:Type) (a:T) (P:(T->Prop)) (x:(P a))=> x):(forall (T:Type) (a:T), (((eq T) a) a))
% 46.24/46.44 eq_stepl:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) a) c))=> ((((((eq_trans T) c) a) b) ((((eq_sym T) a) c) Y)) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) a) c)->(((eq T) c) b))))
% 46.24/46.44 eq_substitution:=(fun (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq U) (f a)) (f x)))) ((eq_ref U) (f a)))):(forall (T:Type) (U:Type) (a:T) (b:T) (f:(T->U)), ((((eq T) a) b)->(((eq U) (f a)) (f b))))
% 46.24/46.44 eq_sym:=(fun (T:Type) (a:T) (b:T) (H:(((eq T) a) b))=> ((H (fun (x:T)=> (((eq T) x) a))) ((eq_ref T) a))):(forall (T:Type) (a:T) (b:T), ((((eq T) a) b)->(((eq T) b) a)))
% 46.24/46.44 eq_trans:=(fun (T:Type) (a:T) (b:T) (c:T) (X:(((eq T) a) b)) (Y:(((eq T) b) c))=> ((Y (fun (t:T)=> (((eq T) a) t))) X)):(forall (T:Type) (a:T) (b:T) (c:T), ((((eq T) a) b)->((((eq T) b) c)->(((eq T) a) c))))
% 46.24/46.44 esti:=(fun (X0:fofType)=> in):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 estie:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((((esti X0) X2) ((d_Sep X0) X1))->(X1 X2)))))
% 46.24/46.44 estii:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->(((esti X0) X2) ((d_Sep X0) X1))))))
% 46.24/46.44 eta_expansion:=(fun (A:Type) (B:Type)=> ((eta_expansion_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)), (((eq (A->B)) f) (fun (x:A)=> (f x))))
% 46.24/46.44 eta_expansion_dep:=(fun (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x)))=> (((((functional_extensionality_dep A) (fun (x1:A)=> (B x1))) f) (fun (x:A)=> (f x))) (fun (x:A) (P:((B x)->Prop)) (x0:(P (f x)))=> x0))):(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))), (((eq (forall (x:A), (B x))) f) (fun (x:A)=> (f x))))
% 46.24/46.44 ex:(forall (A:Type), ((A->Prop)->Prop))
% 46.24/46.44 ex_ind:(forall (A:Type) (F:(A->Prop)) (P:Prop), ((forall (x:A), ((F x)->P))->(((ex A) F)->P)))
% 46.24/46.44 ex_intro:(forall (A:Type) (P:(A->Prop)) (x:A), ((P x)->((ex A) P)))
% 46.24/46.44 famunion:=(fun (X0:fofType) (X1:(fofType->fofType))=> (union ((repl X0) X1))):(fofType->((fofType->fofType)->fofType))
% 46.24/46.44 first:=(fun (X0:fofType) (X1:fofType)=> proj0):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 first_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((first X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X0))))))
% 46.24/46.44 firstis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X0) (((first X0) X1) ((((d_pair X0) X1) X2) X3))) X2))))))
% 46.24/46.44 fixfu2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> ((all_of (fun (X6:fofType)=> ((in X6) X0))) (fun (X6:fofType)=> ((all_of (fun (X7:fofType)=> ((in X7) X0))) (fun (X7:fofType)=> (((X1 X4) X5)->(((X1 X6) X7)->(((e_is X2) ((ap ((ap X3) X4)) X6)) ((ap ((ap X3) X5)) X7))))))))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.24/46.44 fixfu:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType)=> ((all_of (fun (X4:fofType)=> ((in X4) X0))) (fun (X4:fofType)=> ((all_of (fun (X5:fofType)=> ((in X5) X0))) (fun (X5:fofType)=> (((X1 X4) X5)->(((e_is X2) ((ap X3) X4)) ((ap X3) X5)))))))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->Prop))))
% 46.24/46.44 fofType:Type
% 46.24/46.44 functional_extensionality:=(fun (A:Type) (B:Type)=> ((functional_extensionality_dep A) (fun (x1:A)=> B))):(forall (A:Type) (B:Type) (f:(A->B)) (g:(A->B)), ((forall (x:A), (((eq B) (f x)) (g x)))->(((eq (A->B)) f) g)))
% 46.24/46.44 functional_extensionality_dep:(forall (A:Type) (B:(A->Type)) (f:(forall (x:A), (B x))) (g:(forall (x:A), (B x))), ((forall (x:A), (((eq (B x)) (f x)) (g x)))->(((eq (forall (x:A), (B x))) f) g)))
% 46.24/46.44 functional_extensionality_double:=(fun (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))) (x:(forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y))))=> (((((functional_extensionality_dep A) (fun (x2:A)=> (B->C))) f) g) (fun (x0:A)=> (((((functional_extensionality_dep B) (fun (x3:B)=> C)) (f x0)) (g x0)) (x x0))))):(forall (A:Type) (B:Type) (C:Type) (f:(A->(B->C))) (g:(A->(B->C))), ((forall (x:A) (y:B), (((eq C) ((f x) y)) ((g x) y)))->(((eq (A->(B->C))) f) g)))
% 46.24/46.44 i1_s:=(d_Sep nat):((fofType->Prop)->fofType)
% 46.24/46.44 if:=(fun (X0:Prop) (X1:fofType) (X2:fofType)=> (eps (fun (X3:fofType)=> ((or ((and X0) (((eq fofType) X3) X1))) ((and (X0->False)) (((eq fofType) X3) X2)))))):(Prop->(fofType->(fofType->fofType)))
% 46.24/46.44 if_i_0:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->False)->(((eq fofType) (((if X0) X1) X2)) X2)))
% 46.24/46.44 if_i_1:(forall (X0:Prop) (X1:fofType) (X2:fofType), (X0->(((eq fofType) (((if X0) X1) X2)) X1)))
% 46.24/46.44 if_i_correct:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or ((and X0) (((eq fofType) (((if X0) X1) X2)) X1))) ((and (X0->False)) (((eq fofType) (((if X0) X1) X2)) X2))))
% 46.24/46.44 if_i_or:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((or (((eq fofType) (((if X0) X1) X2)) X1)) (((eq fofType) (((if X0) X1) X2)) X2)))
% 46.24/46.44 iff:=(fun (A:Prop) (B:Prop)=> ((and (A->B)) (B->A))):(Prop->(Prop->Prop))
% 46.24/46.44 iff_refl:=(fun (A:Prop)=> ((((conj (A->A)) (A->A)) (fun (H:A)=> H)) (fun (H:A)=> H))):(forall (P:Prop), ((iff P) P))
% 46.24/46.44 iff_sym:=(fun (A:Prop) (B:Prop) (H:((iff A) B))=> ((((conj (B->A)) (A->B)) (((proj2 (A->B)) (B->A)) H)) (((proj1 (A->B)) (B->A)) H))):(forall (A:Prop) (B:Prop), (((iff A) B)->((iff B) A)))
% 46.24/46.44 iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% 46.24/46.44 iii:=(fun (X0:fofType) (X1:fofType)=> (n_some ((diffprop X1) X0))):(fofType->(fofType->Prop))
% 46.24/46.44 image:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((l_some X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.24/46.44 imp:=(fun (X0:Prop) (X1:Prop)=> (X0->X1)):(Prop->(Prop->Prop))
% 46.24/46.44 in:(fofType->(fofType->Prop))
% 46.24/46.44 incl:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((imp (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 ind:=(fun (X0:fofType) (X1:(fofType->Prop))=> (eps (fun (X2:fofType)=> ((and ((in X2) X0)) (X1 X2))))):(fofType->((fofType->Prop)->fofType))
% 46.24/46.44 ind_p:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->((is_of ((ind X0) X1)) (fun (X2:fofType)=> ((in X2) X0)))))
% 46.24/46.44 indeq2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((((indeq X0) X1) X2) (((((d_11_i X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->fofType))))))
% 46.24/46.44 indeq:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType)=> ((ind X2) (((((prop2 X0) X1) X2) X3) X4))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->fofType)))))
% 46.24/46.44 inj_h:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_Sigma X0) (fun (X5:fofType)=> ((ap X4) ((ap X3) X5))))):(fofType->(fofType->(fofType->(fofType->(fofType->fofType)))))
% 46.24/46.44 injective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((all X0) (fun (X4:fofType)=> ((imp (((e_is X1) ((ap X2) X3)) ((ap X2) X4))) (((e_is X0) X3) X4))))))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 inverse:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (fun (X3:fofType)=> (((if ((((image X0) X1) X2) X3)) ((((soft X0) X1) X2) X3)) emptyset)))):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 invf:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X1) (((soft X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 is_of:=(fun (X0:fofType) (X1:(fofType->Prop))=> (X1 X0)):(fofType->((fofType->Prop)->Prop))
% 46.24/46.44 isseti:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) (power X0)))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) (power X0)))) (fun (X2:fofType)=> ((((incl X0) X1) X2)->((((incl X0) X2) X1)->(((e_is (power X0)) X1) X2))))))))
% 46.24/46.44 ite:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X1) ((((prop1 X0) X1) X2) X3))):(Prop->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 k_EmptyAx:(((ex fofType) (fun (X0:fofType)=> ((in X0) emptyset)))->False)
% 46.24/46.44 k_If_In_01:(forall (X0:Prop) (X1:fofType) (X2:fofType), ((X0->((in X1) X2))->((in (((if X0) X1) emptyset)) (((if X0) X2) (ordsucc emptyset)))))
% 46.24/46.44 k_If_In_then_E:(forall (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType), (X0->(((in X1) (((if X0) X2) X3))->((in X1) X2))))
% 46.24/46.44 k_In_0_1:((in emptyset) (ordsucc emptyset))
% 46.24/46.44 k_In_ind:(forall (X0:(fofType->Prop)), ((forall (X1:fofType), ((forall (X2:fofType), (((in X2) X1)->(X0 X2)))->(X0 X1)))->(forall (X1:fofType), (X0 X1))))
% 46.24/46.44 k_Pi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Pi X0) X1))->(forall (X3:fofType), (((in X3) ((d_Pi X0) X1))->((forall (X4:fofType), (((in X4) X0)->(((eq fofType) ((ap X2) X4)) ((ap X3) X4))))->(((eq fofType) X2) X3))))))
% 46.24/46.44 k_PowerE:(forall (X0:fofType) (X1:fofType), (((in X1) (power X0))->((d_Subq X1) X0)))
% 46.24/46.44 k_PowerEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (power X0))) ((d_Subq X1) X0)))
% 46.24/46.44 k_PowerI:(forall (X0:fofType) (X1:fofType), (((d_Subq X1) X0)->((in X1) (power X0))))
% 46.24/46.44 k_ReplEq:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), ((iff ((in X2) ((repl X0) X1))) ((ex fofType) (fun (X3:fofType)=> ((and ((in X3) X0)) (((eq fofType) X2) (X1 X3)))))))
% 46.24/46.44 k_Self_In_Power:(forall (X0:fofType), ((in X0) (power X0)))
% 46.24/46.44 k_SepE1:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->((in X2) X0)))
% 46.24/46.44 k_SepE2:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) ((d_Sep X0) X1))->(X1 X2)))
% 46.24/46.44 k_SepI:(forall (X0:fofType) (X1:(fofType->Prop)) (X2:fofType), (((in X2) X0)->((X1 X2)->((in X2) ((d_Sep X0) X1)))))
% 46.24/46.44 k_Sigma_eta_proj0_proj1:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((and ((and (((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)) ((in (proj0 X2)) X0))) ((in (_TPTP_proj1 X2)) (X1 (proj0 X2))))))
% 46.24/46.44 k_UnionEq:(forall (X0:fofType) (X1:fofType), ((iff ((in X1) (union X0))) ((ex fofType) (fun (X2:fofType)=> ((and ((in X1) X2)) ((in X2) X0))))))
% 46.24/46.44 k_UnivOf_In:(forall (X0:fofType), ((in X0) (univof X0)))
% 46.24/46.44 k_UnivOf_ZF_closed:(forall (X0:fofType), (d_ZF_closed (univof X0)))
% 46.24/46.44 l_ec:=(fun (X0:Prop) (X1:Prop)=> ((imp X0) (d_not X1))):(Prop->(Prop->Prop))
% 46.24/46.44 l_et:(forall (X0:Prop), ((wel X0)->X0))
% 46.24/46.44 l_iff:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((imp X0) X1)) ((imp X1) X0))):(Prop->(Prop->Prop))
% 46.24/46.44 l_or:=(fun (X0:Prop)=> (imp (d_not X0))):(Prop->(Prop->Prop))
% 46.24/46.44 l_some:=(fun (X0:fofType) (X1:(fofType->Prop))=> (d_not ((all_of (fun (X2:fofType)=> ((in X2) X0))) ((non X0) X1)))):(fofType->((fofType->Prop)->Prop))
% 46.24/46.44 lam_Pi:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->((in (X2 X3)) (X1 X3))))->((in ((d_Sigma X0) X2)) ((d_Pi X0) X1))))
% 46.24/46.44 lessis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((iii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.24/46.44 moreis:=(fun (X0:fofType) (X1:fofType)=> ((l_or ((d_29_ii X0) X1)) ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.24/46.44 nIn:=(fun (X0:fofType) (X1:fofType)=> (((in X0) X1)->False)):(fofType->(fofType->Prop))
% 46.24/46.44 n_1:=(ordsucc emptyset):fofType
% 46.24/46.44 n_1_p:((is_of n_1) (fun (X0:fofType)=> ((in X0) nat)))
% 46.24/46.44 n_all:=(all nat):((fofType->Prop)->Prop)
% 46.24/46.44 n_ax3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) n_1)))
% 46.24/46.44 n_ax4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((n_is (ordsucc X0)) (ordsucc X1))->((n_is X0) X1))))))
% 46.24/46.44 n_ax5:((all_of (fun (X0:fofType)=> ((in X0) (power nat)))) (fun (X0:fofType)=> ((cond1 X0)->((cond2 X0)->((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_in X1) X0)))))))
% 46.24/46.44 n_in:=(esti nat):(fofType->(fofType->Prop))
% 46.24/46.44 n_is:=(e_is nat):(fofType->(fofType->Prop))
% 46.24/46.44 n_one:=(one nat):((fofType->Prop)->Prop)
% 46.24/46.44 n_pl:=(fun (X0:fofType)=> (ap (plus X0))):(fofType->(fofType->fofType))
% 46.24/46.44 n_some:=(l_some nat):((fofType->Prop)->Prop)
% 46.24/46.44 nat:=((d_Sep omega) (fun (X0:fofType)=> (not (((eq fofType) X0) emptyset)))):fofType
% 46.24/46.44 nat_1:(nat_p (ordsucc emptyset))
% 46.24/46.44 nat_ind:(forall (X0:(fofType->Prop)), ((X0 emptyset)->((forall (X1:fofType), ((nat_p X1)->((X0 X1)->(X0 (ordsucc X1)))))->(forall (X1:fofType), ((nat_p X1)->(X0 X1))))))
% 46.24/46.44 nat_inv:(forall (X0:fofType), ((nat_p X0)->((or (((eq fofType) X0) emptyset)) ((ex fofType) (fun (X1:fofType)=> ((and (nat_p X1)) (((eq fofType) X0) (ordsucc X1))))))))
% 46.24/46.44 nat_ordsucc:(forall (X0:fofType), ((nat_p X0)->(nat_p (ordsucc X0))))
% 46.24/46.44 nat_p:=(fun (X0:fofType)=> (forall (X1:(fofType->Prop)), ((X1 emptyset)->((forall (X2:fofType), ((X1 X2)->(X1 (ordsucc X2))))->(X1 X0))))):(fofType->Prop)
% 46.24/46.44 nat_p_omega:(forall (X0:fofType), ((nat_p X0)->((in X0) omega)))
% 46.24/46.44 neq_ordsucc_0:(forall (X0:fofType), (not (((eq fofType) (ordsucc X0)) emptyset)))
% 46.24/46.44 nis:=(fun (X0:fofType) (X1:fofType)=> (d_not ((n_is X0) X1))):(fofType->(fofType->Prop))
% 46.24/46.44 nissetprop:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((d_and (((esti X0) X3) X1)) (d_not (((esti X0) X3) X2)))):(fofType->(fofType->(fofType->(fofType->Prop))))
% 46.24/46.44 non:=(fun (X0:fofType) (X1:(fofType->Prop)) (X2:fofType)=> (d_not (X1 X2))):(fofType->((fofType->Prop)->(fofType->Prop)))
% 46.24/46.44 nonempty:=(fun (X0:fofType) (X1:fofType)=> ((l_some X0) (fun (X2:fofType)=> (((esti X0) X2) X1)))):(fofType->(fofType->Prop))
% 46.24/46.44 not:=(fun (P:Prop)=> (P->False)):(Prop->Prop)
% 46.24/46.44 obvious:=((imp False) False):Prop
% 46.24/46.44 omega:=((d_Sep (univof emptyset)) nat_p):fofType
% 46.24/46.44 omega_nat_p:(forall (X0:fofType), (((in X0) omega)->(nat_p X0)))
% 46.24/46.44 one:=(fun (X0:fofType) (X1:(fofType->Prop))=> ((d_and ((amone X0) X1)) ((l_some X0) X1))):(fofType->((fofType->Prop)->Prop))
% 46.24/46.44 oneax:(forall (X0:fofType) (X1:(fofType->Prop)), (((one X0) X1)->(X1 ((ind X0) X1))))
% 46.24/46.44 or3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((l_or X0) ((l_or X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.24/46.44 or:(Prop->(Prop->Prop))
% 46.24/46.44 or_comm_i:=(fun (A:Prop) (B:Prop) (H:((or A) B))=> ((((((or_ind A) B) ((or B) A)) ((or_intror B) A)) ((or_introl B) A)) H)):(forall (A:Prop) (B:Prop), (((or A) B)->((or B) A)))
% 46.24/46.44 or_first:=(fun (A:Prop) (B:Prop)=> (((((or_ind A) B) ((B->A)->A)) (fun (x:A) (x0:(B->A))=> x)) (fun (x:B) (x0:(B->A))=> (x0 x)))):(forall (A:Prop) (B:Prop), (((or A) B)->((B->A)->A)))
% 46.24/46.44 or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% 46.24/46.44 or_introl:(forall (A:Prop) (B:Prop), (A->((or A) B)))
% 46.24/46.44 or_intror:(forall (A:Prop) (B:Prop), (B->((or A) B)))
% 46.24/46.44 or_second:=(fun (A:Prop) (B:Prop) (x:((or A) B))=> (((or_first B) A) (((or_comm_i A) B) x))):(forall (A:Prop) (B:Prop), (((or A) B)->((A->B)->B)))
% 46.24/46.44 ordsucc:=(fun (X0:fofType)=> ((binunion X0) (d_Sing X0))):(fofType->fofType)
% 46.24/46.44 ordsucc_inj:(forall (X0:fofType) (X1:fofType), ((((eq fofType) (ordsucc X0)) (ordsucc X1))->(((eq fofType) X0) X1)))
% 46.24/46.44 orec3:=(fun (X0:Prop) (X1:Prop) (X2:Prop)=> ((d_and (((or3 X0) X1) X2)) (((ec3 X0) X1) X2))):(Prop->(Prop->(Prop->Prop)))
% 46.24/46.44 orec:=(fun (X0:Prop) (X1:Prop)=> ((d_and ((l_or X0) X1)) ((l_ec X0) X1))):(Prop->(Prop->Prop))
% 46.24/46.44 otax1:(forall (X0:fofType) (X1:(fofType->Prop)), (((injective ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))))
% 46.24/46.44 otax2:(forall (X0:fofType) (X1:(fofType->Prop)), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((X1 X2)->((((image ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1))) X2)))))
% 46.24/46.44 out:=(fun (X0:fofType) (X1:(fofType->Prop))=> (((soft ((d_Sep X0) X1)) X0) ((d_Sigma ((d_Sep X0) X1)) ((e_in X0) X1)))):(fofType->((fofType->Prop)->(fofType->fofType)))
% 46.24/46.44 pair:=(fun (X0:fofType) (X1:fofType)=> ((binunion ((repl X0) d_Inj0)) ((repl X1) d_Inj1))):(fofType->(fofType->fofType))
% 46.24/46.44 pair_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) X0)->(forall (X3:fofType), (((in X3) (X1 X2))->((in ((pair X2) X3)) ((d_Sigma X0) X1))))))
% 46.24/46.44 pair_p:=(fun (X0:fofType)=> (((eq fofType) ((pair ((ap X0) emptyset)) ((ap X0) (ordsucc emptyset)))) X0)):(fofType->Prop)
% 46.24/46.44 pairis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> (((e_is ((setprod X0) X1)) ((((d_pair X0) X1) (((first X0) X1) X2)) (((second X0) X1) X2))) X2))))
% 46.24/46.44 plus:=(fun (X0:fofType)=> ((ind ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->fofType)
% 46.24/46.44 power:(fofType->fofType)
% 46.24/46.44 proj0:=(fun (X0:fofType)=> (((d_ReplSep X0) (fun (X1:fofType)=> ((ex fofType) (fun (X2:fofType)=> (((eq fofType) (d_Inj0 X2)) X1))))) d_Unj)):(fofType->fofType)
% 46.24/46.44 proj0_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (proj0 X2)) X0)))
% 46.24/46.44 proj0_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (proj0 ((pair X0) X1))) X0))
% 46.24/46.44 proj1:(forall (A:Prop) (B:Prop), (((and A) B)->A))
% 46.24/46.44 proj1_Sigma:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->((in (_TPTP_proj1 X2)) (X1 (proj0 X2)))))
% 46.24/46.44 proj1_pair_eq:(forall (X0:fofType) (X1:fofType), (((eq fofType) (_TPTP_proj1 ((pair X0) X1))) X1))
% 46.24/46.44 proj2:(forall (A:Prop) (B:Prop), (((and A) B)->B))
% 46.24/46.44 proj_Sigma_eta:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:fofType), (((in X2) ((d_Sigma X0) X1))->(((eq fofType) ((pair (proj0 X2)) (_TPTP_proj1 X2))) X2)))
% 46.24/46.44 prop1:=(fun (X0:Prop) (X1:fofType) (X2:fofType) (X3:fofType) (X4:fofType)=> ((d_and ((imp X0) (((e_is X1) X4) X2))) ((imp (d_not X0)) (((e_is X1) X4) X3)))):(Prop->(fofType->(fofType->(fofType->(fofType->Prop)))))
% 46.24/46.44 prop2:=(fun (X0:fofType) (X1:(fofType->(fofType->Prop))) (X2:fofType) (X3:fofType) (X4:fofType) (X5:fofType)=> ((l_some X0) ((((((d_10_prop1 X0) X1) X2) X3) X4) X5))):(fofType->((fofType->(fofType->Prop))->(fofType->(fofType->(fofType->(fofType->Prop))))))
% 46.24/46.44 prop3:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((n_is ((ap X0) X2)) ((ap X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 prop4:=(fun (X0:fofType)=> ((l_some ((d_Pi nat) (fun (X1:fofType)=> nat))) (d_24_prop2 X0))):(fofType->Prop)
% 46.24/46.44 r_ec:=(fun (X0:Prop) (X1:Prop)=> (X0->(d_not X1))):(Prop->(Prop->Prop))
% 46.24/46.44 refis:(forall (X0:fofType), ((all_of (fun (X1:fofType)=> ((in X1) X0))) (fun (X1:fofType)=> (((e_is X0) X1) X1))))
% 46.24/46.44 relational_choice:(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) (fun (y:B)=> ((R x) y))))->((ex (A->(B->Prop))) (fun (R':(A->(B->Prop)))=> ((and ((((subrelation A) B) R') R)) (forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R' x) y))))))))))
% 46.24/46.44 repl:(fofType->((fofType->fofType)->fofType))
% 46.24/46.44 satz10:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.24/46.44 satz10a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.24/46.44 satz10b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) ((d_29_ii X0) X1)) ((iii X0) X1))))))
% 46.24/46.44 satz11:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((d_29_ii X0) X1)->((iii X1) X0))))))
% 46.24/46.44 satz12:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((iii X0) X1)->((d_29_ii X1) X0))))))
% 46.24/46.44 satz13:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->((lessis X1) X0))))))
% 46.24/46.44 satz14:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((lessis X0) X1)->((moreis X1) X0))))))
% 46.24/46.44 satz1:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((nis X0) X1)->((nis (ordsucc X0)) (ordsucc X1)))))))
% 46.24/46.44 satz2:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((nis (ordsucc X0)) X0)))
% 46.24/46.44 satz3:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_some (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.24/46.44 satz3a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> (((nis X0) n_1)->(n_one (fun (X1:fofType)=> ((n_is X0) (ordsucc X1)))))))
% 46.24/46.44 satz4:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((one ((d_Pi nat) (fun (X1:fofType)=> nat))) (fun (X1:fofType)=> ((d_and ((n_is ((ap X1) n_1)) (ordsucc X0))) (n_all (fun (X2:fofType)=> ((n_is ((ap X1) (ordsucc X2))) (ordsucc ((ap X1) X2))))))))))
% 46.24/46.44 satz4a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl X0) n_1)) (ordsucc X0))))
% 46.24/46.44 satz4b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) (ordsucc X1))) (ordsucc ((n_pl X0) X1)))))))
% 46.24/46.44 satz4c:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is ((n_pl n_1) X0)) (ordsucc X0))))
% 46.24/46.44 satz4d:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl (ordsucc X0)) X1)) (ordsucc ((n_pl X0) X1)))))))
% 46.24/46.44 satz4e:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl X0) n_1))))
% 46.24/46.44 satz4f:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl X0) (ordsucc X1)))))))
% 46.24/46.44 satz4g:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((n_is (ordsucc X0)) ((n_pl n_1) X0))))
% 46.24/46.44 satz4h:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is (ordsucc ((n_pl X0) X1))) ((n_pl (ordsucc X0)) X1))))))
% 46.24/46.44 satz5:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> ((n_is ((n_pl ((n_pl X0) X1)) X2)) ((n_pl X0) ((n_pl X1) X2)))))))))
% 46.24/46.44 satz6:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((n_is ((n_pl X0) X1)) ((n_pl X1) X0))))))
% 46.24/46.44 satz7:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((nis X1) ((n_pl X0) X1))))))
% 46.24/46.44 satz8:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((nis X1) X2)->((nis ((n_pl X0) X1)) ((n_pl X0) X2)))))))))
% 46.24/46.44 satz8a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((all_of (fun (X2:fofType)=> ((in X2) nat))) (fun (X2:fofType)=> (((n_is ((n_pl X0) X1)) ((n_pl X0) X2))->((n_is X1) X2))))))))
% 46.24/46.44 satz8b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> ((amone nat) (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))))))
% 46.24/46.44 satz9:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((orec3 ((n_is X0) X1)) (n_some (fun (X2:fofType)=> ((n_is X0) ((n_pl X1) X2))))) (n_some (fun (X2:fofType)=> ((n_is X1) ((n_pl X0) X2)))))))))
% 46.24/46.44 satz9a:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((or3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.24/46.44 satz9b:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((ec3 ((n_is X0) X1)) (n_some ((diffprop X0) X1))) (n_some ((diffprop X1) X0)))))))
% 46.24/46.44 second:=(fun (X0:fofType) (X1:fofType)=> _TPTP_proj1):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 second_p:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) ((setprod X0) X1)))) (fun (X2:fofType)=> ((is_of (((second X0) X1) X2)) (fun (X3:fofType)=> ((in X3) X1))))))
% 46.24/46.44 secondis1:(forall (X0:fofType) (X1:fofType), ((all_of (fun (X2:fofType)=> ((in X2) X0))) (fun (X2:fofType)=> ((all_of (fun (X3:fofType)=> ((in X3) X1))) (fun (X3:fofType)=> (((e_is X1) (((second X0) X1) ((((d_pair X0) X1) X2) X3))) X3))))))
% 46.24/46.44 set_ext:(forall (X0:fofType) (X1:fofType), (((d_Subq X0) X1)->(((d_Subq X1) X0)->(((eq fofType) X0) X1))))
% 46.24/46.44 setminus:=(fun (X0:fofType) (X1:fofType)=> ((d_Sep X0) (fun (X2:fofType)=> ((nIn X2) X1)))):(fofType->(fofType->fofType))
% 46.24/46.44 setof_p:(forall (X0:fofType) (X1:(fofType->Prop)), ((is_of ((d_Sep X0) X1)) (fun (X2:fofType)=> ((in X2) (power X0)))))
% 46.24/46.44 setprod:=(fun (X0:fofType) (X1:fofType)=> ((d_Sigma X0) (fun (X2:fofType)=> X1))):(fofType->(fofType->fofType))
% 46.24/46.44 soft:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((ind X0) (fun (X4:fofType)=> (((e_is X1) X3) ((ap X2) X4))))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 st_disj:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X0) (fun (X3:fofType)=> ((l_ec (((esti X0) X3) X1)) (((esti X0) X3) X2))))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 subrelation:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (R':(A->(B->Prop)))=> (forall (x:A) (y:B), (((R x) y)->((R' x) y)))):(forall (A:Type) (B:Type), ((A->(B->Prop))->((A->(B->Prop))->Prop)))
% 46.24/46.44 suc_p:((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((is_of (ordsucc X0)) (fun (X1:fofType)=> ((in X1) nat)))))
% 46.24/46.44 surjective:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((all X1) (((image X0) X1) X2))):(fofType->(fofType->(fofType->Prop)))
% 46.24/46.44 tofs:=(fun (X0:fofType) (X1:fofType)=> ap):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 union:(fofType->fofType)
% 46.24/46.44 unique:=(fun (A:Type) (P:(A->Prop)) (x:A)=> ((and (P x)) (forall (x':A), ((P x')->(((eq A) x) x'))))):(forall (A:Type), ((A->Prop)->(A->Prop)))
% 46.24/46.44 unique_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (x:(forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y))))))=> ((((dependent_unique_choice A) (fun (x2:A)=> B)) R) x)):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), ((forall (x:A), ((ex B) ((unique B) (fun (y:B)=> ((R x) y)))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), ((R x) (f x)))))))
% 46.24/46.44 univof:(fofType->fofType)
% 46.24/46.44 unmore:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sep X0) (fun (X3:fofType)=> ((l_some X1) (fun (X4:fofType)=> (((esti X0) X3) ((ap X2) X4))))))):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 wel:=(fun (X0:Prop)=> (d_not (d_not X0))):(Prop->Prop)
% 46.24/46.44 wissel:=(fun (X0:fofType) (X1:fofType) (X2:fofType)=> ((d_Sigma X0) (((wissel_wb X0) X1) X2))):(fofType->(fofType->(fofType->fofType)))
% 46.24/46.44 wissel_wa:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X1)) X0) X2) X3)):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 wissel_wb:=(fun (X0:fofType) (X1:fofType) (X2:fofType) (X3:fofType)=> ((((ite (((e_is X0) X3) X2)) X0) X1) ((((wissel_wa X0) X1) X2) X3))):(fofType->(fofType->(fofType->(fofType->fofType))))
% 46.24/46.44 xi_ext:(forall (X0:fofType) (X1:(fofType->fofType)) (X2:(fofType->fofType)), ((forall (X3:fofType), (((in X3) X0)->(((eq fofType) (X1 X3)) (X2 X3))))->(((eq fofType) ((d_Sigma X0) X1)) ((d_Sigma X0) X2))))]X0:fofType
% 46.24/46.44 X1:(fofType->Prop)
% 46.24/46.44 X2:fofType]x:((is_of X2) (fun (X2:fofType)=> ((in X2) ((d_Sep X0) X1))))]x0:fofType] (rdef{??}) X2:=((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->(d_not ((iii X0) X1))))))):Prop
% 46.24/46.44 ---
% 46.24/46.44 self=((all_of (fun (X0:fofType)=> ((in X0) nat))) (fun (X0:fofType)=> ((all_of (fun (X1:fofType)=> ((in X1) nat))) (fun (X1:fofType)=> (((moreis X0) X1)->(d_not ((iii X0) X1))))))):Prop
% 46.24/46.44 term=(((e_in X0) X1) X2):fofType
% 46.24/46.44 --- does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> (forall x:((moreis X0) X1), (d_not ((iii X0) X1))))))))
% 46.24/46.44 Unexpected exception Does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> (forall x:((moreis X0) X1), (d_not ((iii X0) X1))))))))
% 46.24/46.44
% 46.24/46.44 Traceback (most recent call last):
% 46.24/46.44 File "CASC.py", line 80, in <module>
% 46.24/46.44 proof=problem.solve()
% 46.24/46.44 File "/export/starexec/sandbox2/solver/bin/TPTP.py", line 95, in solve
% 46.24/46.44 for x in self.solveyielding():
% 46.24/46.44 File "/export/starexec/sandbox2/solver/bin/TPTP.py", line 83, in solveyielding
% 46.24/46.44 for proof in proofgen: yield proof
% 46.24/46.44 File "/export/starexec/sandbox2/solver/bin/prover.py", line 422, in proveyielding
% 46.24/46.44 results=node.look() #Can add nodes
% 46.24/46.44 File "/export/starexec/sandbox2/solver/bin/prover.py", line 1221, in look
% 46.26/46.44 matching=target.match(term.body,self.context,termbodycontext,instantiate=True)
% 46.26/46.44 File "/export/starexec/sandbox2/solver/bin/kernel.py", line 576, in match
% 46.26/46.44 atermmatch=s.abstracttermmatch(params,context,termcontext,instantiate=instantiate)
% 46.26/46.44 File "/export/starexec/sandbox2/solver/bin/kernel.py", line 1192, in abstracttermmatch
% 46.26/46.44 print "t=%s:%s" % (t,t.gettype(termsubcontext))
% 46.26/46.44 kernel.TypecheckError: Does not match type in application fofType vs Prop in (((e_in X0) X1) ((all_of (fun X0:fofType=> ((in X0) nat))) (fun X0:fofType=> ((all_of (fun X1:fofType=> ((in X1) nat))) (fun X1:fofType=> (forall x:((moreis X0) X1), (d_not ((iii X0) X1))))))))
% 46.26/46.44
%------------------------------------------------------------------------------